Add Port class functionality and tests from Artoo