add a few tests
fix main for tests
fix define_functions
function argument tests