Merging changes with gtrifonov fork adding BaseEntity.cs and exposing MediaContextBase.cs to collections and entities