i01t10: Basic unit tests passing

Done
Added tests, fixed issues  and reorganized code