Marionette testing and network simulation

This adds Marionette testing via the `npm run-script marionette` command, and also a script to change the local network setting between the proxy and the client.
You can use it with `npm run-script networksimulation EDGE|HSDPA|LTE|default` (use `default` to restore default config).
There are many different HSPA and LTE versions, maybe we should just have 2G, 3G and 4G as more generalized connection type classes instead?

Based on [this book](http://chimera.labs.oreilly.com/books/1230000000545) we would then have a mapping like this:
* 2G: 100 Kbit/s, 1000 ms
* 3G: 512 Kbit/s, 500 ms
* 4G: 1024 Kbit/s, 100ms

These would be the worst case numbers, alternatively we could soften them up a little.