* API improvements, code clean-up, docstrings

(Basically all improvements can be found in the docstrings. I had to modify the tests slightly to fit the more compact route description but they all pass.)