add PortalItemFunctions as parameter to init_portal_internal.  add send/recv functions