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?
Yeah, I like this as well.  The same question comes up.  Since the AdaFruit V1 board has so many specific pins, do we want to make the user enter these things?  Or should they be available (or defaulted?) in a constant and overridable by the user?