some additional error tests
more fail test cases
check for duplicate symbols
compress lines
make empty input string an invalid input
multiple scalars outside tuple is invalid
change visible strings "hash" to "assoc"
one more hash -> assoc string
test/implement :as clause for assoc
minor string edits
test some :as fail cases
one more :as fail case
test/implement :keys binding clause
test/implement bad :keys clauses
test/implement that binding pairs have keyword as second symbol
test/implement some keyword checks in binding pairs
revise exception messages to be clearer
add assoc test case with :keys and sequence