FileMetaDataProvider: Implement `cancel()`
Allow for in-progress FileMetaDataProvider
to be cancelled.
PS. This depends on !40 (merged) (included here) because that makes this implementation a lot simpler, see 857a55c6a828ce5e23c4bbc4fe595527d43129d7