Automatically skip packages that have dependencies that can't be found

If you try to explicitly install such a package, it will still give an error
message. This fixes an issue where packages that aren't what you are actually
interested in a repo prevent installation from working because they include
dependencies that aren't found.

Fixes #599.
Give a better error message for not found packages
Fix the tests
no need to use lower keys
formating
allow new the new version matching functionality on command line, fixes issue #624
add command being run to history file
minor simplification
allow DEFAULTS in CONDA_ENVS_PATH
fix error message for --file option when file does not exist
update changelog
Merge branch 'master' into depsnotfound
Raise correct exception that is caught in later code
update changelog
store in sorted form
Make sure there aren't multiple solutions in the resolve tests
Don't install a package with a feature unless it is explicitly requested

This will prevent mkl versions of numpy, scipy, etc. from slipping in when
they weren't asked for.

In general, the use-cases we have in mind for features are such that they
shouldn't be installed unless they are specifically requested.

Fixes #629.
Merge branch 'master' of github.com:conda/conda
Update the CHANGELOG
put new history module into action