Inital contribution of MAX! binding

Here is the refactored MAX! binding

Signed-off-by: Marcel Verpaalen <marcel@verpaalen.com>
@kaikreuze

Trying to understand this bit of the code

Should this not be thingUID = new ThingUID(thingTypeUID, bridgeUID.getId(), SerialNumber, );
currently it is exactly like the Hue one ( thingUID = new ThingUID(thingTypeUID, bridgeUID.getId(), lightId);
) and seems to work

but if I look at the definition the bridge is the 2nd parameter?
/**
* Instantiates a new thing UID.
* 
* @param thingType
* the thing type
* @param bridgeUID
* the bridge UID through which the thing is accessed
* @param id
* the id of the thing
*/
public ThingUID(ThingTypeUID thingTypeUID, ThingUID bridgeUID, String id)