Aliases: from a local file, kinda like requirements.txt, maps name to hash, either package/module name, or an author/public key name. Example: from cas.a.jmg.utils import aiter, anext Make sure that when an alias is used, that the same module is returned when a direct hash import is used. Local cache: if a directory like ~/.cas_cache exists, use it's contents automatically, and if it's writable, write any network fetched imported data to it. Features: add: file url ipfs hash git(?)hub? init cache: