Revamp the Templates module. Make subclassing more standard.