Strip whitespace when joining LinkedTexts
try a SQLite index with ID numbers for assertions
a more compact SQLite index

- store hashes of URI prefixes, instead of prefixes themselves
- store assertions as filenames + byte offsets, kind of like WordNet
  does, instead of putting all the data in the index
add some SQLite optimizations
use 64-bit edge IDs instead of sequential IDs and URIs
We can now look things up in the assertion index
prevent double-counting of GlobalMind assertions

GlobalMind assertions would tend to be attributed to two apparently
different users, which were actually the same user on Open Mind Common
Sense and on GlobalMind. I merged the namespaces to prevent this.
allow indexing on URI

If we restrict URI pieces to those with balanced brackets, this will
prevent a lot of useless URI indexes -- in fact, only complete assertion
URIs will get indexed, which is fine.
update extract_wiktionary to use transactions
generalize the DB index beyond prefixes
rename 'assertions' to 'edges' in the index
WIP: pure-Python lookup methods and API
Update `get_data_filename` to `get_support_data_filename`
Update rules for grako 3.0
Minor conveniences when building data
Fix some parser glitches revealed by grako 3.0
fixes to the DB build process
remove WITHOUT ROWID clause, which most systems don't support yet
update the documentation diagram so it says "sources"

(not "source", which isn't what the property is called)
build SQLite instead of Solr in the Makefile