typed access for mixins implemented

Sample usage:

    public class SidebarMixin
    {
        [DocumentTypeProperty(UmbracoPropertyType.Other, Name = "Sidebar Content", Tab = TabNames.Content, OtherTypeName = CustomEditors.MultiContentPicker)]
        public List<DocumentTypeBase> SidebarContent { get; set; }
    }

    [DocumentType(Name = "Article Page", IconUrl = "details.png", Thumbnail = "details-big.png",
         AllowedTemplates = new[] { Templates.OneColumn, Templates.TwoColumns },
         DefaultTemplate = Templates.TwoColumns,
         AllowedChildNodeTypeOf = new[] { typeof(FrontPage), typeof(Folder) },
         Mixins = new[] { typeof(SidebarMixin) })]
    public class ArticlePage : ContentPageBase, ISidebarContainer
    {
        [MixinProperty] // virtual can be added to make property lazy-loaded
        public SidebarMixin Sidebar { get; set; }
    }