Additionally add support for normal saving ("Save File").
This change gives support for saving files other than the current one.
EchidnaWindow.save_file_as() was only able to save the current tab opened.
This allows for a more component-based codebase, like those in web development.
Also added barebone minimap and refactored the file loading.
Should have commited them in a separate commit, but I'm just used to overusing git add -p.