API breakage

 * Remove FS-relevant functions, as they weren't really used
 * Rename `.is*()` to `.has*()`.
 * Make a separate set where keys are optional (i.e. if they're there, they must have the given type.)