checkpoint: restapi PUT/PATCH for Photo.rating

* ERROR: doesn't handle crossDomain POST correctly. may need to push backend to same domain.
checkpoint: restapi PUT/PATCH for Photo.rating

* move save() from View to Model
* tap into Photo.sync() for pre-flight changes to Backbone.sync()
* change PUT/POST params to correct form, add Workorder params
* added useRestApi=true/false to change post format between RestApi and Cakephp POST
add support for ?backend=node

* uses node.js backend for REST API, avoids CORS issue
* use http://localhost:3000/bb/?userid=5013ddf3-069c-41f0-b71e-20160afc480d&type=Workorder:11&perpage=30&backend=node
checkpoint: add _useNodeBackend for hiddenshotCollection

* http://localhost:3000/bb/?userid=5013ddf3-069c-41f0-b71e-20160afc480d&type=wo:11&perpage=40&backend=node
* XHR GET http://localhost:3000/shot/5203c928-c230-4ead-98b0-19500afc6d44.json?page=1&perpage=999&userid=5013ddf3-069c-41f0-b71e-20160afc480d&type=wo%3A11&backend=node&sort=score&direction=desc&ownerid=51cad9fb-d130-4150-b859-1bd00afc6d44
backend=node
direction=desc
ownerid=51cad9fb-d130-4150-b859-1bd00afc6d44
page=1
perpage=999
sort=score
type=wo:11
userid=5013ddf3-069c-41f0-b71e-20160afc480d
debug _useCakephpBackend
add hostname to Photo.urlRoot
Merge branch 'restapi-PUT'

Conflicts:
	js/collections/gallery.js