A node may not depend on itself

Also simplify generation of exception message. The *print-length*
binding was paranoid: nodes should probably not be large data
structures.

Originally reported by "tgoossens" here:
https://github.com/stuartsierra/dependency/pull/1

Also added to tools.namespace:
https://github.com/clojure/tools.namespace/commit/41cd3c37cc29a4916d89aeca21ceac627a5174be