Create ServiceController for managing service lifecycle.

Created ServiceController to mimic the functionality of
ActivityController for Services. Created abstract base class
ComponentController to factor out functionality that was common
between ActivityController and ServiceController.

Closes #1081.