Computing in context: integrating an embedded computing project into a course on ethical and societal issues