Day and hour period

Interesting point:
* Refactoring to extract common Period object on timeseries.py
* Allowed ObjectIds to be valid values
* Migration to add `_hour_start_at` and `_day_start_at`

@roc and @phss