Implemented command line and method arg passing, refactored

Needs some refactoring