Add support for mindsensors.com EV3 Sensor Mux
Start on mport class
Add new more generic lego bus and finish mindensors.com EV3 sensor mux support.

We will be moving from EV3 specific drivers bus to more generic drivers. This
is the first step in that direction. Here is what is changing in terms of
sysfs paths.

* /sys/bus/legoev3 > /sys/bus/lego
* /sys/bus/legoev3/[in|out]* > /sys/class/lego-port/port*
* /sys/class/msensor > /sys/class/lego-sensor
* /sys/class/msensor/sensor*/dp > /sys/class/lego-sensor/sensor*/decimals

The legoev3 bus becomes the lego bus. There will be fewer devices on this bus
now. Port devices now have their own class, so they will no longer be on the
lego bus. We are also dropping the idea of a 'port host' on top of an input
port. The functionality will be merged into the port drivers. The bus will
still be used for driver matching for sensors and motors though.

The msensor class is being renamed to the lego-sensor class. Also, the dp
attribute is renamed to decimals.

The mindsensors.com EV3 sensor mux has been implemented using these new classes
and bus. The EV3 analog sensor driver has been migrated too, so the EV3 Touch
sensor will not work with the EV3 right now, only with the sensor mux.

The new drivers are also organized a little better using subdirectories. Other
drivers will be moved to subdirectories as they are migrated to the new
framework.