FtpFileSystem: implement .equals()/.hashCode()

Will be needed for *Provider.
A lot of code thrown around, none tested :/

The fs API is _really_ hard; start with some code even if most of it will get
eventually replaced...