Splitting out calculations into a service.
Merge pull request #1 from stephenwoods/master

Splitting out calculations into a service.