Support for the irNetBox MK2

Adds support for the irNetBox MK2 to the irnetbox module (previously
only the MK3 was supported).

When initialising the IRNetBox class, a message will be sent to the
irNetBox to determine which model it is. If it is MK2 or MK3 it is
supported and messages should send correctly; if it is MK1 an exception
is raised.

The MK2 has a more intricate API for emitting infrared: You have to send
separate messages to allocate memory, load a signal into the allocated
memory, set the desired power level, and finally emit the infrared
signal.

Note that the MK2 only has 3 output power levels (low, medium & high)
unlike the MK3 which has 100 discrete power levels. To keep the same
python API for both models, `irsend_raw` still takes a number from 1 to
100; give a number <33 for low power, <66 for medium power, >=66 for
high power.
Update documentation to reflect irNetBox mk-II support
irnetbox.py: Treat unknown irNetBox model as the MK-III

This is, frankly, for my own convenience in testing. RedRat kindly sent
me a free irNetBox-III for testing, with a faulty USB microcontroller (I
don't need the USB interface to test the network & infrared aspects of
the irNetBox, so it doesn't matter for my testing). However the USB
microcontroller is also responsible for responding to the "device
version" message, and the faulty microcontroller is saying "version =
0".

This shouldn't affect any commercial irNetBox customers out there
because "version = 0" isn't a valid version for any irNetBox model.