clean up the Collection class

Removed the jsonColl method, since it's not called. Used
hasOwnProperty throughout. Removed the hasOwnProperty check from the
add method, since none of the callers check the return value to make
sure the assignment happened.
use a single call to ImageMagick to get gps coords

The existing code calls identify four times in parrallel, once for
each of the four metadata fields it needs to access.
compute the server address instead of hardcoding it

This will save us the trouble of editing it to change it for
production and testing.
explicitly list all the messages the server will handle

and give each one its own function. This helps readability,
maintanibility, searchability and makes the stack traces more
meaningful.
used location.host instead of hard coded host
Merge pull request #2 from db48x/collection

clean up the Collection class
Merge branch 'master' of https://github.com/petermoser/OpenChat
Merge pull request #3 from db48x/image-latlng

use a single call to ImageMagick to get gps coords
Merge pull request #5 from db48x/simple-protocols

Looks like this will make the code easier to maintain. Thanks!
Merge branch 'master' of https://github.com/petermoser/OpenChat
added language selection
added slideout panels for toolbar and filters
added location.host
Merge branch 'pr/4'

Conflicts:
	client/openchat.js
clean up Collection class using ES5 features

Uses Object.create(null) to create an object that has no prototype
Uses Object.keys() to simplify the enumeration.

No longer needs to call hasOwnProperty on every access, because our
inner object has a null prototype change (it only has it's own
properties). Still calls hasOwnProperty for add/remove so that it
knows when to change the stored length.
look up message names in the protocol cleanly

it's much harder to read with indexOf. Also, fixed a typo in
importImage.
Merge branch 'simple-protocols' of https://github.com/db48x/OpenChat

Conflicts:
	server/openchat.js
fixed collection issues
move collection class to common area, add jasmine test

etc
add tests for add and remove methods of the collection class