fix Timeline to work with approvable reservations and add tests for FindPeriod