refactors get handling into a new namespace