move out the two private function to utils class for reuse.
add system subclass for debian package and system upgrade