Add support for multiple bulbs, documentation work.

This patch adds:

- Support for multiple bulbs behind a single LIFX PAN gateway (bridge) with `bulb_addr` parameter to each method.
- Removes `bulb_addr` parameter to `LifxController` as it is available for each method -- this allows methods like `LifxController.on` to default to controlling all bulbs for ease of use.
- Tightens MAC address formatting rules to prevent entry of addresses containing `g-z`.
- Loosens MAC address formatting rules slightly to allow skipping of separator characters (like what `processMAC` transforms into, and what received packets contain.
- Documentation for existing methods.
- Basic Sphinx documentation setup with autodoc.