Velocity templates should be called for ascenedant primary types

Fix for: https://www.pivotaltracker.com/s/projects/684825/stories/79207804
You can do the tests for both immediate primary node types and their supertypes in one loop (or better, one functional idiom) if you put them all in a flat ordered list. You're doing the same work in both-- there's no reason to write it out twice.