create Device class and abstract configuration logic into each type of device to clean up appium.js
rearchitect configuration methods
finish porting ios args
port android basic config
port chrome config
migrate ios args in remaining files
migrate firefoxos config
remove need for things other than safari.js to know about SafariLauncher
continue to clean up appium.js to handle new architecture
fix unit tests to mock IOS instead of using weird mock_ios device
add unit tests for device extraction logic
handle starting server with only --force-iphone or --force-ipad for device too
fix a few ios bugs and add list of things that our testsuite doesn't cover yet
fix websocket bug and make sure named apps clobber device in caps
ensure device detection works in a case-insensitive manner
Merge pull request #1986 from jlipps/appium-js-refactor

Refactor appium.js