bugfix: destructured+optional args
.
.
.
.
give rest params precedence over optional params

This means that if a function has a rest param, passing in optionals
will require a keyword arg.

http://www.arclanguage.org/item?id=13083
http://arclanguage.org/item?id=18277

get-arg is now much harder to read.
destructured param lists aren't first-class

This is all quite ugly.
.
unnecessary once we properly support destructured optionals
.
buggy attempt at destructured optionals

default-value is an utter dead end because it doesn't pass through ac.
destructured optionals work

Easy once I get on the right track: rely on the existing support for
optionals and just return #f in get-arg.
cleanup
.
long existential odyssey: defextend+optionals

I fear the issues I've uncovered show that keyword args are a dead end.

Still failing tests in 'updating'. If I can't fix them the decision will
be easy.
another gotcha

nested :body confuses outer 'with' macro
This whole thing is busted.