Much more robust API

0) Returns proper HTML response codes
1) Much faster! (because it returns proper response codes browser
doesn't wait!)
2) Can't crash the app by sending bad data (checks what you send it)
3) Makes sure the browser won't cache the data (problem solved)
4) If it can't update or delete an item you now will be notified
properly