First pass at AdaFruit Motor Shield v1.*

This is my first attempt at implementing an AdaFruit motor shield with directional control.

Hoping to see if I am on the right track before I finish this up (tests, documentation, etc).  

You can create a motor the traditional way with the controller:

```javascript
new five.Motor({
  pins: { pwm: 11 },
  controller: "ADAMOTOV1"
});
```

But since these motors are called out by name and it can be hard to find the documentation which tells us which PWM pin to use for which motor, I built it into the configuration of the controller:

```javascript
new five.Motor({
  name: "M2",
  controller: "ADAMOTOV1"
});
````

Thoughts?
Ok, so this is a first cut at the structure.  It still needs all the behavior added AND I expect to abstract away the `ShiftRegisterMotorShield` class which `AdafruitMotorShieldV1` will use, but I think [my new branch](https://github.com/BrianGenisio/johnny-five/commit/232320e1df6d0746bc6824a1e28106c464bbd2ed) this gets us in the direction of where we want to go.

It lets us do this:
```javascript
var shield = new five.Shield("ADAMOTOV1");
shield.M1.fwd();
```

Assuming @dtex and @rwaldron like this approach, I'll continue going down this path and send a new PR through.