Far too many modifications for a single commit, need to restart.
* bzrlib/tests/workingtree_implementations/test_parents.py: (TestSetParents.test_unicode_symlink): Add more checks for involved trees.
* bzrlib/tests/tree_implementations/test_get_symlink_target.py: (TestGetSymlinkTarget.test_get_unicode_symlink_target): Bah, no need to test unicode file-ids here.
* bzrlib/tests/test_transform.py: (TestBuildTree.test_case_insensitive_build_tree_inventory): Fix the test condition for good.
* bzrlib/tests/test_shelf.py: Fix imports. (TestPrepareShelf._test_shelve_symlink_target_change): Factored out. (TestPrepareShelf.test_shelve_symlink_target_change) (TestPrepareShelf.test_shelve_unicode_symlink_target_change): Also test unicode symlinks.
* bzrlib/tests/test_bundle.py: (BundleTester._test_symlink_bundle): Factored out. (BundleTester.test_symlink_bundle, BundleTester.test_unicode_symlink_bundle): Also test unicode symlinks.
* bzrlib/tests/test__dirstate_helpers.py: Fix some imports. (load_tests): Start parametrizing against DirReaders.
* bzrlib/merge_directive.py: (MergeDirectiveFormatRegistry): Add Aaron explanation for the double registration.
* bzrlib/hashcache.py: (HashCache.get_sha1): Instrumented for pronto.
* bzrlib/osutils.py: (_walkdirs_utf8, UnicodeDirReader.read_dir): Intrumented for pronto.
* bzrlib/dirstate.py: (DirState._read_link): Intrumented for pronto.
* bzrlib/tests/per_repository/test_commit_builder.py: (TestCommitBuilder._add_commit_change_check_changed): Add a file_id optional parameter. (TestCommitBuilder._test_last_mod_rev_after_content_link_changes_ric): Factored out. (TestCommitBuilder.test_last_modified_rev_after_content_link_changes_ric, TestCommitBuilder.test_last_modified_rev_after_content_unicode_link_changes_ric): Also test unicode symlinks.
* bzrlib/tests/branch_implementations/test_sprout.py: (TestSprout.test_sprout_with_unicode_symlink): Use an unicode name for the link too. Add more checks for involved trees.