move coercion functions into TickleFunctions

* added a few minor fixups in the tickle parser to unambiguously
  parse functions and ranges without needing to backtrack