Add pin widget code

This add a new approach to the pin entry. Hopefully as this is quite a bit simpler than the old way we'll see less edge-case bugs that need working around.

Here's a walkthrough in the emulator + plus a demo of how it works at varying widths https://www.dropbox.com/s/2decr9hmwlcpiin/pin-input.mp4

The UI for this much more closely resembled the gaia pin widget and I've followed some of the ideas in the gaia code for this which has helped in making this much smaller; fwiw the current webpay version of the pin js is 181 lines - this is 72, and hopefully there shouldn't be a need to add much more to this for the purposes of making the widget do what it needs to do.