Added initial database support along with the initial migration creation.
- To create a migration, you need to run
dotnet ef migrations add NameOfMigration
. After that, simply push in the migration file. - Migrations are applied programmatically at the start of the program. A GlobalMutex is in place to enforce a single instance is running UFOBot at any given time.
- Refactored events somewhat
- Added a Guild extension method (which meant refactoring a command context extension method)
- Added tracking of message manipulation and deletion. If the bot detects that a user has deleted another user's message, a message in #audit-log will appear.
- Added
!viewmessage <msglink>
command