Moved IO wrapped calls into the IPathDetails interface, and added a test to make sure no actions are added to a tracked file if nothing has changed with the file.