* BTCPay Extensions Part 2
This PR cleans up the extension system a bit in that:
* It renames the test extension to a more uniform name
* Allows yo uto have system extensions, which are extensions but bundled by default with the release (and cannot be removed)
* Adds a tool to help you generate an extension package from a csproj
* Refactors the UI extension points to a view component
* Moves some more interfaces to the Abstractions csproj
* Rename to plugins
* wip
* add in storage system
* ui fixes
* fix settings ui
* Add Files Crud UI
* add titles
* link files to users
* add migration
* set blob to public
* remove base 64 read code
* fix file query model init
* move view model to own file
* fix local root path
* use datadir for local storage
* move to services
* add direct file url
* try fix tests
* remove magic string
* remove other magic strings
* show error message on unsupported provider
* fix asp net version
* redirect to storage settings if provider is not supported
* start writing tests
* fix tests
* fix test again
* add some more to the tests
* more tests
* try making local provider work on tests
* fix formfile
* fix small issue with returning deleted file
* check if returned data is null for deleted file
* validate azure Container name
* more state fixes
* change azure test trait
* add tmp file url generator
* fix tests
* small clean
* disable amazon and google
comment out unused code for now
comment out google/amazon
* add in ui
* add in logging viewer
* Revert "add in ui"
This reverts commit 9614721fa8.
* finish basic feature
* clean up
* improve and fix build
* add in debug log level command option
* use paging for log file list, use extension to select log files, show message for setting up logging
* make paging a little better
* add very basic UT for logs
* Update ServerController.cs