Initial "argSigil" support.

This uses Perl-ish sigils to declare the type of argument expected
by executables.  Sigils can be one of "$@%*", to signify string,
array, object, or any as the expected arg type.

This helps remove some boilerplate type checking from executables,
and makes it easier to parse shell input in an intelligent way.