lowers result_type upon construction now
fixed gen method usage
moved test util functions to __init__