Introducing options for specifying interpreter

Instead of executing module directly it executes interpreter and passes
module and module arguments to it as command line options. New options:
`--runhaskell', `--package-conf' and `--interpreter'.
Cabal example behaves idempotently

When specified package is already installed then it doesn't try to
install it again.
Bumping version to 0.3.1.0