Centralizes common archive overlay code

This commit brings archive overlay code to one common place, in
an attempt to make maintaining and adding archive overlay types
to layman much easier.

tar.py: Removes doctest tests from tar.py as there is already an
existing external.py test.