You can also associate a Kindle with an email address, and email files to that address. The file appears as part of your cloud collection.
For sideloading, the books need to be azw3 or mobi. For emailing the book needs to be mobi. In either case epub is not accepted.
The only functionality issue I run in to is that as far as I can tell, Amazon has a feature where if you buy the book from them then they keep your progress synced between your kindle and their phone apps. Can't use that with books from other sources.
I have a Kobo that lets you read even more formats than Kindle, like .cbz for comics.