Working on the switch type
switch module looks ok, just needs to be tested
Still working on switch abstraction