FInished tests, wrote REST API controller and a little bit of cleanup.

TODO: Visit the messaging side of things.
removed models (thanks Daniel)
CandidateId is now GUID.