Badly planned == rewriting

Not keen on the whole serial port implementation so trying something
else