JavaScript function calling & constructor support

Since normal JS functions don't follow the same key-value convention as
CreamerScript, there needs to be a way to call functions with a
non-keyed list of arguments.

    (_ invoke:list, handler, arg1, arg2)

becomes

    _.invoke(list, handler, arg1, arg2)

The `new` "function" is special in JS. We need to treat invocations to
`new` differently than the rest. We need to prefix the subject rather
than calling it on the subject.

    (Date new:)

becomes

    new Date()