Language-level demodularizer.

This allows the demodularizer to be used within the language (via 'demodularize', similar to 'compile'). The currently-unsound DCE is available via a parameter, and this is exposed to the raco demodularize tool.