Changes Properties to ICollection instead of Collection for IPublishedContent.
Creates PublishedContentBase object which handles the Url and Indexed property on IPublishedContent automatically so implementors should use this base
class instead. Moves GetPropertyValue extensions to the Umbraco.Web project instead of the
Umbraco.Core project because this method needs to parse internal links if the value is a string. We require the UmbracoContext
to do this so they must exist in the Web project.
Added DynamicInstanceHelper for any dynamic object that should find matches on methods, properties and
extension methods. Fixed ExtensionMethodFinder to find the Enumerable extensions (was previously set to IEnumerable which would
find nothing).