further refactored Template, added an immature collection_update implementation