Adafruit Motor Shield V2 support

The Adafruit V2 uses the NXP's PCA9685 I2C, Quad H-Bridge controller. There are other devices which use this controller so I targeted that rather than a single specific shield.

A couple of highlights.
* Braking works (that's not supported in the Adafruit library for some reason)
* You can stack 32 of these things :exclamation: 

In addition to Adafruit support, this PR addresses:

* Tests that were not checking to make sure that pins were being set in the right order #433
* Fixes the unrelated start(), stop(), start() issue brought up by @meshy in the #433 discussion thread
* Broke out resume, setPin and setPWM to wrapper functions for simplicity

I've also got the [updated wiki page](https://github.com/dtex/johnny-five/wiki/Motor) ready

I still would like to run another round of hardware testing, but I think it's ready for a look-see and nits.
`interface` can't be used as an Identifier: https://people.mozilla.org/~jorendorff/es6-draft.html#sec-future-reserved-words

This is ok:

```js
var o = {
  interface: ...
};
```

This is not: 

```js
var interface = ...
```