move: templated method implementations to the header where they belong