Cleaned up the tests, every method and persistance is tested and works. Very occasional errors on tests but this is due to the random order they are run in and some dates occasionally get reused in an order that results in exceptions being thrown. Can probably be fixed using multiple instances of Calendars