Improve desugarImplicitPrelude following review

* use Biplate functions instead of pattern matching
* respect NoImplicitPrelude pragma
Enable ImplicitPrelude by default