fix error when deepcopying functions in planner

with immutable argument lists
and providing a proper error trace for UnsupportedOperationExceptions
fix arithmetic functions for all numeric datatypes
apply proper validation to datatype conversion of numeric types
Merge pull request #1001 from crate/m/arithmetic_fixes

M/arithmetic fixes