A bunch of fixes for a 1.4

* some doc fixes,
* some test stuff
* a fix for alists to allow keys to be symbols or strings
* indentation for the match forms
* a struct pattern matcher along the lines of the alist and plist