Refactor OsInspector

* Use consistent names for all methods which get information about
  the operating system
* Make logic of os inspection more explicit
* Use methods instead of hash elements to access attributes of Os
* Group tests according to which function they test

Supercedes #48 
This could be in a separate cleanup commit but if it is only one line I wouldn't mind.