Separate out blink(1) commands into blink1.js.

Create a separate Javascript class that represents a particular blink(1)
device and encapsulates the usage of the chrome.hid API.
Glancing at the [chromium code](https://code.google.com/p/chromium/codesearch#chromium/src/extensions/browser/api/hid/hid_api.cc&rcl=1409573844&l=318), it looks like we're going to send 9 bytes (data.buffer size + 1) where it expects [8 bytes packets](https://github.com/todbot/blink1/blob/master/docs/blink1-hid-commands.md#protocol). We may want `var data = new Uint8Array(7);` then. What do yo think?

Moreover, if that's the case, the documentation (hid.idl) needs to be updated as well so that developers know what to expect.