Fix for remote shells to throw on fail
Refactored package managers to modules

This allows for including multiple types of package managers per host
(i.e. apt + dpkg, yum + rpm, etc)
First bits of apt and dpkg package types
Added yum-ability