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, TypTag and improves liftable for Symbol
- minor bug fixes