Updates to Base CLI and Factory.

* Updated the Info method to return a single item from list if stdout
  exists or raise an exception if more than one result is returned;
* Refactored Factory to be a bit more generic and added a new
  make_model method;