platform polymorphism: add platform type p as a phantom type to Tower, Node, RPC monads