remove most uses of MessagePool and make MessageBase smaller