SI-6844  SI-8076 improve handling of function parameters in quasiquotes

Fixes two bugs related to handling of function parameters:

* [SI-6844](https://issues.scala-lang.org/browse/SI-6844) restrict splicing in parameter position
* [SI-8076](https://issues.scala-lang.org/browse/SI-8076) improve support for implicit argument list

Best viewed per commit. 

review @retronym