Adding Integration Tests

- Trying to add integration tests, as per this blog post:
	http://www.strathweb.com/2013/12/owin-memory-integration-testing/
- Something not quite right, as keep getting this error message:
	Newtonsoft.Json.JsonSerializationException : Cannot deserialize the current JSON object
- Must be something not quite right with my configuration
Add tests for service, and using NSubstitute rather than FakeItEasy
Complete tests against Service
Initial commit of refactoring to move logic inside of service
Not 100% happy with where code is as a lot of mapping to and from things
Also using ViewModel in both Api & Service rather than a simple data transfer object or just the parameters
Implement ChemicalDTO
Alter add to pass arguments
Alter if to use Any rather than Count > 0
StyleCop Compliance
Refactored remaining controller methods
Rebased on master