a bike is assigned to a program by building an Assignment
more examples and making sure a new reservation does not override existing
adding test cases
assignment spec failing for preventing a new assignment from overriding one that is existing
changing associations for assignments/departures, removing polymorphic to better serve as a join table