Refactoring code structure to remove duplication
Adding missing file to refactoring
Refactor osx and linux implementations into single posix class
Merge pull request #2 from hybridgroup/refactoring

Refactoring code structure to remove duplication