351 reservation create

Refactors ReservationController#create by moving reservation-creating logic to the cart
I originally had it not-transactionized but I changed it back for a couple reasons:

1. it was difficult in the confirm reservation view to communicate that reservations without errors would be reserved and reservations with errors would be filed as a request. Ideally I'd want to be able to say "this equipment will be reserved" and "this equipment will be requested" but it's basically impossible to separate items with errors and items without errors from the cart.
2. if a user goes over the max for a category and has multiple equipment items in the cart in that category, he/she doesn't get a choice which items are reserved and which are requested. Eg user reserves 2x camera model A and 1x camera model B and the max for categories is 2 items. Maybe he/she wants 1x A and 1x B and request 1x A but the non-transactionized reservation would just automatically reserve 2x A and request 1x B
3. changing reservation logic is complicated and it's cleaner to refactor while keeping the same functionality and file a separate PR/issue if we want to change the logic
4. no one has yet complained that transactionized cart is annoying