Cleaning and straightening.  Pushing more responcibility into services
(which are easier to reuse and more appropriate for interacting with the
backend)