Erroneous file change detection fix

This is a fix to Issue #2759. It should no longer erroneously detect changes when compiling, saving images, or exporting

*    Listens for any files of the appropriate type for the current mode (e.g. in Java mode .pde and .java files)
*    Listens to Creates and Deletes as well
*    If the last code-file was deleted from the sketch it will attempt to re-save that file to prevent a crash
*    Fix: now adapts to the new location if SaveAs was called

P.S. Sorry if this is a round-about way of doing this pull request, still learning how to use git properly