Add explicit event subscription methods

Still need to test this version locally with the libraries that depend on it.

* `File::onDidChange`
* `File::onDidDelete`
* `File::onDidRename`
* `Directory::onDidChange`
* Also deprecates subscribing to their string-based counterparts with `::on`