Added tests and the ability to generate from a given starting token.