Change TimePeriodMixin to allow for dynamic model resolution

- Changed the name of the attribute model to time_period_model If
- time_period_model is None then a dynamic resolution of the model is
  tried. Tried by taking the app_name from the current request. App
  name is only set if it was configured on the urls/include of the
  apps urls.py.