add port abstraction
use it to enable lower-case characters
clean up petio code with register names