Rework Porthole to use the portage API

Detlev Casanova

Abstract

Currently, Portage GUI's have to run the emerge script to do almost all portage functionalities. The goals of this project are to finish the still-young new portage python API so that it can be used by those GUI's and port porthole to use it It will be an API that won't change every now an then. This will improve applications performance and won't rely on the current sometimes-changing-emerge terminal output.