- MediaInfo becomes MediaFactoryItem. All MediaFactory and plugin-related APIs are updated accordingly. The rule of thumb is to use "item" on MediaFactory, and "mediaFactoryItem" on the plugin classes (since the former are already qualified, whereas the latter are not).
- Remove IMediaResourceHandler. Add canHandleResource to LoaderBase. Make handler function a Function to pass to MediaFactoryItem's constructor.
- Merge resolver interfaces/classes into MediaFactoryItemResolver, which defaults to selecting the first one.
- Make LoaderBase load/unload methods final. Add protected methods to execute the load, so that we can ensure validation takes place first.
- Update all unit tests and sample apps accordingly.