Add Provider<T> interface
Modify ShowsProvider to implement Provider interface
Add Shows class
Add doc for Provider interface
Fix var name to match data
Add TrackedShow model and provider
Merge branch 'provider' into dev