Adds isOn property to RGB

Adds isOn property for RGB that looks to see if ANY of the colors are
on. When calling .on(), it leaves the led as-is if it’s already on.

Also adds chaining capability to .on() and .off() and saves color state
when those functions are called.

Does not yet address saving previous color as requested in #375

Other functions like toggle/brightness/etc still need to be updated to
treat RGB as a whole rather than individual LEDs.
Using thisArg makes sense for .some() but the only other place I use it is inside .reduce() which doesn't take a thisArg. Do you have a preferred approach to handle that?

I could put ```var that = this``` inside the values get function to reduce its scope:

``` javascript
    values: {
      get: function() {
        var that = this;
        return Led.RGB.colors.reduce(function(current, color) {
          return (current[color] = that[color].value, current);
        }, {});
      }
    }
```

I could pass ```this``` is as part of the initial value to .reduce() (yuck!).

I could add a reference to the leds inside the state object. But that feels redundant to me.

Or I could probably get creative and use a wrapper function or .bind() somehow.

But all those seem messier than just ```var that = this``` appropriately scoped.

Your preference?