Introduce a visitor pattern for the Json values and use it for the JsonWriter.
Merge branch 'master' of github.com:OpenLightingProject/ola

Conflicts:
	include/ola/web/Json.h
Merge pull request #375 from nomis52/master

Introduce a visitor pattern for the Json values and use it for the JsonW...
Remove some minor code duplication and add a bit more compatibility with Windows
Fix a bug with the tidying up
Refactor the code a little bit
Extend the tests
Fix the bug breaking the DMX monitor.
Fix the lint warning
Merge pull request #380 from peternewman/trivial-fixes

Improve some of the path to filename code
Add a check for JsonRawValue
Merge branch 'master' of https://github.com/OpenLightingProject/ola into trivial-fixes
Extend the licence checking script to report errors and exit and add this as another Travis check
Fix the bash script
Add some more licence files and fix some incorrect licences
Use the Python from configure for tests. Fixes #377
Merge pull request #381 from peternewman/trivial-fixes

Add a check for JsonRawValue, fix some licence issues. Enhance and enable the licence enforcer for travis and fix a Python test issue on OS X
Fix a bug I introduced
Resync with trunk.
Merge branch 'trivial-fixes' of https://github.com/peternewman/ola into trivial-fixes
Add a timestamp to model data filenames so they're unique