COOPR:629 Update template APIs to support extending templates and including partials

@jwang47 Branch ready for review.
Yes, I already did it. I'm waiting when I done with moving mutable collections. Please, see my question below.