support custom var reification

Can now set :reify-vars to a fn that takes a var and the reification
substitution map. This function should extend this map. Add test cases
for :reify-vars false and :reify-vars where the fn leaves the
reification map unextended allowing vars to pass through.