FileObserverTile: onEvent callback posts on UI thread

Use a private runnable to post the callback on UI thread. Credit
@anders3408 for showing me that onEvent is not thread safe. Sub classes
can implement onFileChanged to safely hook into the callback

Also make subclass TAG public static final