Quasiquotes refactoring

Fixes a number of bugs:
* SI-6837: pattern don't infer most specific types
* SI-6839: more standard instances of Liftable
* SI-6851: crash upon cardinality mismatch
* SI-6878: splicing list of Liftable fails

Refactoring and fixes:
* all tree construction and deconstuction is refactored using quasiquotes
* much improved error reporting for construction quasiquotes
* adds new liftables for Expr, TypeTag and improved liftable for Symbols
* fixes incorrect reification of emptyValDefs and pendingSuperCalls
* use macro ??? instead of ??? // macro
* move all universe-dependant liftables into StdLiftables
* refactor quasiquote test suite
* minor bug fixes
Merge pull request #34 from densh/topic/quasiquotes-refactoring

quasiquotes refactoring