Integrate mechanic.js, closes #20

So far, it includes the following items:
* Enable [mechanic.js](https://github.com/jaykz52/mechanic) selectors for elements
* Provide backwards compatibility for `view.$` and `waitForElement`
* Refactor the client side code into multiple files
* Refactor JS compilation and Simulator handling out of `feature.rb`
* General codebase housekeeping

The only side effect of introducing Mechanic is that the default UIATarget timeout value is now set to 0. It doesn't sound harmful but I'm still a bit suspicious.