Fix the managed files and directories lists.

Things were not recursing into directories properly.
Update the hidden file detection code.

Now takes into account deep directory trees.
Cache managed entry lists.
Split up the hidden entry/find_entry tests.
Update get_entry to take hidden files into account.