* spike new scanner
* add existing items to new scanner
* add collection refresh actions
* add tv show metadata and posters
* update metadata and posters when nfo/poster files are updated
* add "remove" action, test for all supported file extensions
* update statistics when primary video file is updated
* reflect that collections are "sourced" from nfo
* implement most scanning actions
* cleanup
* fix startup
* cross-platform scanner tests
* first pass at refresh-all-metadata by source
* add version to startup logs
* lock media source during refresh
* fix local media source "name" in collection editor
* optimize scanning so playouts only rebuild when necessary
* support more poster file types
* more scanning improvements; check for missing posters during scans
* support .etvignore files to exclude folders (and child folders) from scanner
* include top-level folder in scanner
* don't always rescan "other" media sources
* add metadata/poster refresh button to media cards
* replace media items tables with card grids
* style cleanup
* add basic paging
* sort and page in the db
* optimize sql for movies
* support movie posters
* resize movie posters and store in cache with channel logos
* fix bug preventing folders with more than 50 chars as local media sources
* support tv posters
* reorganize metadata parsing; only attempt to parse appropriate media type based on media source configuration
* add fallback metadata for movie sources
* only request read access for nfo metadata
* fix tests
* fix yml formatting
* test build action
* move ci workflow
* fix unit tests from dotnet test command
* add release workflow
* try another matrix syntax
* fix path to csproj
* fix target framework
* more release fixes
* port fixes for running outside of docker