switched from transport being functorial to having a functor for transports, same with ap