Clear old room assignments when you schedule via ajax

Otherwise very confusing things happen
Remove unused ajax scheduling module backend code

These things are now done by the json data module
Remove unused "no compromise" option on assign rooms
Fix for ajax changelog entries which unschedule classes

We should see an empty list instead of [""]
changelog represents timeslot ids as ints

Used to be strings
timeslot ids are ints elsewhere
Basic changelog stuff working
Refactor unscheduleSectionLocal to use scheduleSectionLocal
Create separate component to deal with changelog
set initial changelog index inteligently

Grab the most recent change index before we get data, and start from there.
Use ids to schedule sections

so changelog manager doesn't need to know about sections
Add error reporter and specs for getting changelog to api client
Fix for scheduling/unscheduling bug
Configurable update interval
Cleanup: removing todos, adding ;
Cells for rooms we don't have show up dark grey