Refactored main to accomodate testing
Tests basic primitives