is_* strict - error checks, added is_numeric with tests