Changed -#> macro so that it will not thread through symbols not "registered" as graph functions via their var metadata. This (along with a few helper macros) enables a function to be listed as "please thread me" at definition time, and allows less noisy uses of the -#> macro.

Previously:

(-#> (digraph :relations [[:from :to]])
     (add-nodes :id (-#| (range 5)))
     (add-cycle [:from :to] (-#- (sort-by :id (nodes)))))

Now:

(-#> (digraph :relations [[:from :to]])
     (add-nodes :id (range 5))
     (add-cycle [:from :to] (sort-by :id (nodes))))