reorganize files in interface directory
more cleanup
expose application settings to JS
add support for AudioDevice scripting interface, and switching audio input/output device on the fly
add sample scripts
fix some windows issues

Conflicts:
	assignment-client/src/audio/AudioMixer.cpp
revert
revert
whitespace cleanup
Merge pull request #2451 from ZappoMan/windows_fixes

Windows run time fixes
Merge branch 'master' of https://github.com/worklist/hifi into js_prefs
add support for listing all audio devices and default device in JS
change audio-mixer struggle behaviour
Merge pull request #2454 from birarda/audio-scaling

change audio-mixer cutoff scaling to be exponential
change back off strategy, output trailing sleep
Merge pull request #2456 from birarda/master

change audio-mixer back off strategy to be linear
correctly output trailing sleep time
Merge pull request #2457 from birarda/master

correctly output trailing sleep time
add a json stats packet type
add logic to domain-server to parse JSON stats