Api infrastructure

I don't know why the commit from Nolan below listed is on this PR.  I've googled it a lot and it hasn't fixed the issue.  This code needs merging, I have modified the API method for:

* keeping the request object around (connect keep-alive), 
* adding an automatic parse of the return value form canvas, now available in returned_value.env.body as a ruby object
* Rewrote the README.md a bit, still needs work for new developers (learned from helping get Richard setup today).
To avoid namespace conflict (and just keep track of what's used where), I think it's best practice to keep things out of "$scope" unless they're actually needed by the template. This function and some of the ones below look like they could be defined as local var instead.