[ refactor ] Use smart consS instead of :# subst constructor.

consS (var n) $ wkS (n+1) IdS  optimizes to  wkS n IdS.
[ imports ] Always import Agda.Syntax.Common as Common.
[ Issue 1374 ] Fixed.  Invalid substitution was used in debug output.
Merge branch 'maint-2.4.2'
[ refactor ] Always import Agda.Syntax.Common as Common
Merge branch 'maint-2.4.2'

Conflicts:
	src/full/Agda/Compiler/Epic/Erasure.hs
	src/full/Agda/Compiler/Epic/ForceConstrs.hs
Add UHC Backend (experimental)
Add new naming API, try to use haskellish names if possible.
Split up Compile monad into multiple smaller ones.
Unify core constructor handling
Use Core API instead of direct imports
Add serialisation support for UHC backend interfaces (still disabled)
Fix core linking for datatype dummy functions