Add test_repository_tool.py

Add 'test_repository_tool.py' (initial incomplete commit)
Add test cases for the top-level metadata objects (Root(), Targets(), etc.)
Add test case for Repository()
Add test case for get_target_hash()
Minor update to 'repository_tool.py': add default rolename for Targets() and call tuf.util.get_target_hash() in the
repository tool's get_target_hash()
Continue updating test_repository_tool.py.

Add test cases for the crypto funtions (e.g., generate_and_write_ed25519_keypair()).
Add test case for get_metadata_filenames().
Add test case for get_metadata_fileinfo().
Add setUpClass() and tearDownClass().
Update affected functions that failed testing, and any that needed modifying (such as util.py).
Continue updating test_repository_tool.py.

Add test cases for the generate_*_metadata() functions.
Finish remaining test cases for repository_tool.py functions.
Add test cases (skeleton) for remaining methods of test_repository_tool.py.
Update repository_tool.py.

Add remaining test cases for the methods of repository_tool.Metadata().
Add test case for repository_tool.Repository.get_filepaths_in_directory().
Update repository tool diagram.

Add missing 'repository_tool.Metadata.signatures' to the diagram.
Finish test cases for the methods of Targets().
[WIP] Add test case for repository.write().
Finish test case for write().
Merge pull request #203 from vladimir-v-diaz/develop

Add test_repository_tool.py