Make path length variables size_t. This fixes the problem where
things like rm can't remove files with ridiculously long path names
that were created by some script kiddie trying in vain to exploit
something. Previously, the length was effectively constrained to
USHRT_MAX due to one of the internal structs. Also, nuke FTS_CHDIRROOT
since it never worked correctly and hasn't been documented for a
long time.