rose date: 360 day compatibility

This makes the date.py library capable of using the 360 day calendar by either:

 - cylc (or the user) setting CYLC_CALENDAR to either 360 or gregorian
 - a switch to rose-date CLI utility to set the calendar to use

Also adds tests for the new behaviour.


Need to have:
```
--calendar=CALENDAR_TYPE
```
and probably quote `gregorian` and `360` to make it clear that they're
possible values.