Follow on work for #1501. With the new TabletFile, we can now prevent metadata paths being incorrectly written (or not deleted) if an exception is thrown. One way to do this is to have different methods on TabletFile to get the metadata entry depending if it is needed for reading, updating, inserting, or deleting. If the path is needed for reading or inserting, we can use the normalized path. If the path is needed for updating or deleting, then it has to be the original metadata entry (what was read) and TabletFile should throw an error if it is null.