Initial commit of web marker editing feature.

Added a MarkerEditComponent which provides a REST-ish servlet for
adding, editing, and deleting markers. Currently only supports lines and
point markers. Added a markeredit.js client component which adds support
for adding/deleting markers and editing lines via a right-click menu.

Repurposed JSONServlet to be a base class for servlets accepting JSON
requests and responding with JSON. The old JSONServlet wasn't being used
and it just had one utility function.

Small modification to markers.js so markers store their own ID and an
event is dispatched when new markers are created on the map.