repository refactoring + stubs.

repository::{builder,cache,distributor,extractor,local_system} stubs.
repository_error declaration and integration.
repository::distributor::create{,_recursively}() implementation.
repository::distributor::update_meta() implementation.
repository::distributor::update_sources() implementation.
{read,write}_snapshot() implementation.
{read,write}_checksum() implementation.
cache_config refactoring.
repository::cache partial implementation.

read_index()
read_checksum()
build_outdated()
installation_outdated()
checksum_path()
index_path()
build_archive_path()
build_snapshot_path()
installation_archive_path()
installation_snapshot_path()
repository::local_system implementation.
repository::builder implementation.
repository::extractor implementation.
repository::cache::file_path() bug fix.
repository::distributor::archiver() implementation.
Repository format update.

Source archive's contents will not be prefixed by source_id.
For example
package/
        index
        src/
            file1
            file2
'file1' and 'file2' will not be prefixed by 'src' in source archive.

repository::distributor::create() was updated.
repository::cache partial implementation.

read_build_snapshot()
read_installation_snapshot()
unpack_source()
unpack_build()
unpack_installation()
pack_build()
pack_installation()
repository::cache::lock() implementation.
repository::cache refactoring.

validate_and_repair() -> verify_and_repair()
repository::cache implementation.
repository::native was removed.