Revert "Revert "Merge pull request #55 from alphagov/refactor_time_bound_associations""

This reverts commit e52c85bc75f71dda31cc1646123e931f89dfadaf.
Extend TimeMachine with relevant access pattern.

So that we could index commodities at their validity periods without
issues related to associations.
Merge pull request #57 from alphagov/time_machine_fix

Time machine and indexing fix