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
clang plugin: allow overriding llvm-config binary

ppa:h-rayflood/llvm has a llvm-3.2 (and clang) with the llvm-config binary named llvm-config-3.2 instead (that is, version suffixed); this allows building the clang plugin with `make LLVM_CONFIG=llvm-config-3.2` to succeed (since the package doesn't use update-alternatives for some reason).

This does not change the default behaviour.
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.
Add *.egg-info to .gitignore
Merge ability to set which llvm-config binary to use via an env var. Closes #95.
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.
Merge ignore of *.egg-info. Closes #100.