Give parsed lists an internal type

Since Lua only uses one data structure, it can be challenging to determine
if something in the parsed code is a table because it's a node or a table
because it's a Scheme list.

This changes adds a property (`list`) to all tables that represent Scheme
lists, rather than simple nodes.
Add `list=true` to all Scheme lists

In order to distinguish tables which are nodes from tables which are Scheme
lists, I've added a property to the ones that are Scheme lists.

This is probably a short-term solution. Using metatables would *probably*
be better.
Add descriptions for all tests