Split refs table into function_refs, macro_refs, type_refs, typedef_refs, and variable_refs.
Split decldef table into function_decldef, type_decldef, and variable_decldef.
Merge branch 'testing' of https://github.com/mozilla/dxr into split-refs
Fix problem where referenced to declarations weren't being resolved properly.
They were being overwritten with NULL when looking for references to definitions.
Merge branch 'master' of https://github.com/mozilla/dxr into split-refs

Conflicts:
	dxr/plugins/clang/dxr-index.cpp
Update "Extents for types declared here" code now that decldef table has been split.
Merge splitting up the *_refs tables. Closes #99.

Before and now, the queries all had to join back to the tables containing the definitions. Now, at least, we can have a proper integrity constraint between them--not that SQLite enforces them, but we may not stay with it forever.

This also makes examining things easier during development, since you don't have to continually test to see what kind of thing a row represents.