improved unknown column handling, better exceptions of unknown function signatures

do we need to .put always, not just if its null?