Update tuf-spec.txt and implement "lazy bin walk"

tuf-spec.txt was updated to include the latest metadata changes, such as version numbers, and the "lazy bin walk" scheme was implemented in updater.py.
Merge branch 'master' of https://github.com/theupdateframework/tuf
Expand comment and add missing prefix comparison in updater.target()
Modify _ensure_all_targets_allowed() to also work with path_hash_prefix
Review and confirm issue #63
Confirm unit tests run properly individually & fix test_keystore

"test_keystore.py" logged TUF messages if run individually.
Refactor log.py and change the default logging behavior

Previously, logging messages were written to "tuf.log" *and* and the console, by default.  Modules had to explicitly disable the logger to silence console messages.  TUF, when integrated by a software updater, should not log messages to console by default.  The design change now forces modules to call tuf.log.add_console_handler() to enable logging messages to console.  The logger, file, and console handlers may have independent logging levels.
Update the unit tests affected by the design change to log.py
Merge remote-tracking branch 'upstream/master'
Update system tests following design change to log.py
Merge remote-tracking branch 'upstream/master'