using hash codes to speed up equals() when possible
fixed a stupid bug with the nopaths option and added a test case for it
added a missing class