Added tests for the FileUpdateChecker

Also moved the call of valid_paths? to happen only for files and not
directories in the BFS. Now we explicitly reject up and self directories
outside of the valid_paths? method.