REF: refactor enpkg tests to remove redundant dummy* stores.
REF: move store tests into enstaller.store.
TST: add tests for exit_if_sudo_on_venv and other utils functions.
TST: add simple tests for LocalIndexedStore.
DOC: document the AbstractStore API.
TST: add some basic tests for JoinedStore.
REF: fix redundant to_dict call.
TST: more tests for JoinedStore + fix some test data inconsitencies.
STY: remove dead code.
TST: add tests for auth and error branches in http store's get_data.
TST: unit test auth-in-url mode of remote http store get_data.
BUG: fix dummy egg to have consistent metadata (name).
TST: add tests for EggCollection.
TST: add tests for JoinedEggCollection.
ENH: ensure every non-abstract method in AbstractStore raises a NotImplementedError.

We cannot set them as abstract method as not every subclass implements
them. The correct solution would be to have multiple interfaces (one for
'writable' store)
Merge branch 'test_store_utils_and_eggcollection'

Conflicts:
	enstaller/store/base.py
	enstaller/store/indexed.py
	enstaller/tests/test_enpkg.py