Allow getting and setting options from IDESlave

This supports checkboxes in Emacs for show implicits and error
context.
Fix "Force" in case tree for new indexed form
Merge pull request #1006 from david-christiansen/ideslave-opts

Allow getting and setting options from IDESlave
Use postulates for decEq primitive proofs

This means we can assert there is a proof at compile-time, but we're not
going to rely on the structure of that proof anywhere (which can cause
problems if they are relied on elsewhere).

Fixes #1005
Rename UnusedArgs to Erasure.
Remove export of traceUnused.
Simplify unused arg search.
Cleanup and purification in Erasure.hs.
More purification.
Simplification with pattern guards.
findUsed stub written.
Make ProjCase take exactly one alternative.   (TODO: is this safe?)
Intercommit. (Deeper usage analysis.)
Ctor usage analysis roughly complete.
Intercommit.
Another intercommit.
Reapply 08779298ce2e95b3e16a5a3e5d9c0cf3936d0507 from master.
Intercommit.
Redefine dep analysis data structures.
getDeps extended.