Remove node-namespace from Adaptor
Remove node-namespace from Driver
Remove node-namespace from Test Drivers/Adaptors
Remove node-namespace from Device
Remove node-namespace from Connection
Remove node-namespace from API
Remove node-namespace from Robot
Remove node-namespace from Config
Remove node-namespace from Utils
Remove node-namespace from DigitalPin
Remove node-namespace from package.json
Refactor Logger
Merge branch 'master' into remove-node-namespace

* master:
  Remove Logger usage from examples
Convert Cylon.Master to a plain JS object

Acts exactly the same with much, much less code complexity.

This also introduces a pattern for providing core modules to external libraries.

Whereas previously Cylon modules were able to rely on Cylon.Adaptor or
Cylon.Driver being present in the namespace (due to being required in
./lib/cylon), they will now need to require Cylon first, like this:

    var Cylon = require('cylon');

    var Driver = Cylon.Driver,
        Adaptor = Cylon.Adaptor,
        DigitalPin = Cylon.IO.DigitalPin;
Remove Logger from global namespace
Tidy up Cylon specs, add specs for exports
Ability to pass the name of module to use for an adaptor. Specifically for case where a module contains multiple adaptors
Resolve merge conflicts
Add istanbul back for code coverage reporting
Merge pull request #179 from hybridgroup/remove-node-namespace

Remove node-namespace and class cruft