Moved more code around to support needed features.  Realized some things are not os specific.