added serialport initial support. Super sketchy, I need to learn how to use it.