* don't store base paths which are coming from outside of the repository scope
* introduced specialized versioncontrol related exception:
* `NoSuchChangeset`
* `NoSuchNode`
* refactored the `TracError` usage to either use one of the above or the use the `TracError(...)` style instead of the `TracError, ...` style
* fix a potential bug when getting the change summary from the Changeset.get_changes
Thanks to Manuzhai for the initial work on this topic.