Adding events for use by Courier/UaaS

Moved all logic of PartialViewTasks and PartialViewMacroTasks to a base class as the only difference was 3 variables
Added events: PartialView(Macro): Create, Save and Delete
Added events: Template: Save (there's already a legacy event, this is a new one to transition to)
PartialViewMacro.ascx.cs was adding ".cshtml" just so that it could strip it of again, crazy
Just looked it up and we have these:
umbraco.cms.businesslogic.template.Template.New
umbraco.cms.businesslogic.template.Template.AfterSave
umbraco.cms.businesslogic.template.Template.AfterDelete