Better JMRI emulation

Fixes:
1) Both server and client now send and receive JMRI JSON messages,
regardless of server type (i.e. node emulates JMRI and node now caches
the JSON objects rather than its own format)
2) JMRI and server object value/state conversion is now consolidated in
ServerComms.js
3) Various data handling robustness improvements

Additions:
1) Clients can now request list objects from JMRI and handle the
resulting response
2) JMRI Variable Helper page to identify possible problems in setting
up static JMRI tables

Bugs/ToDos:
1) Node server can not process/emulate the JMRI list commands
2) Bug introduced where clicking through turnout/block authorization
states is not handled properly (node only?)
Full JMRI compatibility (including list support)

1) Corrects the bug introduced in previous commit where clicking
through turnout/block authorization states is not handled properly
(This was a node side server error where variables were never
initialized properly).
2) Node now supports JMRI list requests for SVG supported objects
3) Corrects minor errors in train name variable updating on dispatcher
pages

As a side note, this will likely be last submission before looking into
ws implementation to interface to JMRI
Merge pull request #46 from svlPanelMaker/master

Final JMRI emulation release