Hi,
portage is the package manager for Gentoo Linux,
emerge is the primary tool of portage.
But, in fact i have to keep in mind that Gentoo is not a real LTS distribution, so, is there so many "problems" to just use "emerge" command.
As you said in a web page i can't found at now, not having only one module making the abstraction of all distributions and package manager ensure to keep the advantages of each distribution / package managers.
Just to be clear, my idea to re-use existing portage/gentoolkit classes is only for preparing/checking the work to do ; once prepared it is only the emerge command which will be called to "install a package on the gentoo system".
I had started to use only the emerge command line, but just after, i was "blocked" for rewrite most of the functions/class already provided natively by portage/gentoolkit himself (in python) : atom string interpretations/validation like slots, operators, wildcards : (=dev-util/strace-4* ; dev-lang/php ; dev-lang/php:5.3 ; >=dev-util/strace-4.6)
the emerge module, if based only on command line will either be light, avoiding most of the ebuild selection / atom strings powerfull side ; or, will be as strong as the code that already exist in portage/gentoolkit.
(This is yes an exageration, just a way to permit you to consider the utilisation).
... please excuse my bad english ...