refactor Tokenable -> Node