Could not get generic protocol typealias's to work, except for NodeProtocol.