Injected system call in order to write unit test

The trade-off is at this point that little OO inheritance hierarchy
doesn't make so much sense anymore... haha
Added unit tests and TODOs, removed fluff

+ Added two more characterization tests
+ Added some TODOs about refactoring
+ Removed some fluff