added basic IOFunc and Port functionality (up to list of IO primitives)