Modify param processing to support both named and positional parameters
cleanup
cleanup
Clean up code, fix bugs, add bool test