a lot of cleanup
add most serial commands (parsing, sending)