Post-merge fixes (semicolons, wording)
Show loading dialog, clear jstorage before redirect
Fix AJAX in 3-step-booking, remove non-ajax case

The case where the form would be submitted without switching to AJAX
would only happen with an old firefox version and a rarely used
extension, so it wasn't really necessary.
Only intercept certain exceptions when booking

anything that's not a NoReportError while creating a booking is probably
an actual error which should be logged as an error and not just shown to
the user as "you can't create this booking because..."
Send a JSON response on booking modification
Proper error handling for AJAX requests

jsonify_errors did not care about XHRs with a non-json payload
Avoid colliding occurrences during modification

We must not synchronize occurrence data from the old occurrence on the
same day as this would un-cancel auto-cancelled occurrences.
Add "Select Mine" to room selector
Fail cleanly if the room doesn't exist
Fix room key tooltip in mini room info widget
Add new Reservation.is_pending property
Only perform reservation actions if necessary

E.g. don't allow to accept a reservation that's not pending
Fix Reservation.is_pending
Use normal properties in json mixin

The functions were not hybrid-compatible anyway
Fix overlap checks
Removed unused methods
Reservation.is_valid is now hybrid_property
Removed Reservation.is_live
Reservation statistics moved to utils
Removed statistic-related methods