Redo Calendar code. No more magic getters/setters

Also removes the old 'calendar' property. Now it's only 'url'
Use new Calendar structure. Use League\Fractal for output

Uses new property names.

Output is generated using Fractal from The League of Extraordinary Packages,
which transforms original attribute names to those expected by the JS code
Add a test for the calendar transformer
Remove unused code from Calendar

Old defaults and getAll() method are not required anymore
Merge branch 'feature/better_calendar_objects' into develop