add outcome builder utility
handle number parsing
support variable substitution in custom fields
link to lti class module