If the found plugin / package does not fulfill some specs (i.e. does not contain the keyword `homebridge-plugin`), it will be rejected with an error. Without that change nobody will be notified WHY the plugin has been rejected/skipped.
- Homebridge calls single exported initializer function and passes an
API object
- No more require() for HAP classes (doesn't play well with plugin
structure)
- Homebridge is now designed to be `npm install`d globally and
executed via "homebridge" script
- Remove all specific accessories/platforms except for an example
- New internal structure and "cli"