Fix PRIMARY KEY uniqueness, duplicate table names, and quoted names
- PRIMARY KEY on non-INTEGER columns now enforces UNIQUE (tests 91-93).
Added has_primary_key field to Ast.column_def; parse_unique_constraints
now treats both column-level and table-level PRIMARY KEY as UNIQUE.
- create_table rejects duplicate table names instead of silently creating
a second entry (test 97).
- Table.create ~name:"kv" reuses the existing default kv table instead of
creating a duplicate (test 98).
- Quoted table names ("my table", [my table], `my table`) are now properly
unquoted during CREATE TABLE parsing (test 99).
- Add memtrace instrumentation to test runner.