memoize fetch_index instead of get_index
Refactor channel url handling, in preparation for adding --channel

It is now possible to get at the individual parts of the logic individually.
Correct a typo, and no-op on @rc
Comment and whitespace fix
@ is not allowed in yaml
Don't allow rc in .condarc channels
Only load the condarc file once
Add -c/--channel and --override-channels

These were added to all the commands that use channels, namely install,
remove, create, update, and search.  search already has -c for --canonical, so
the -c shortcut was not created there.

The syntax is

conda install -c channel1 -c channel2 package1 package2

This will prepend channel1 and channel2 to the channel search list from
.condarc, or the defaults if there is no .condarc.  To instead replace these,
add the --override-channels flag.  This can also be used in conjunction with
the defaults or rc meta-channels to change the prepend behavior.  For example,
to search first the channels in .condarc, then channel1, use

conda install -c rc -c channel1 package
Don't break if there is no .condarc
OK to let .condarc exist but not have channels defined in it
Replace the rc meta-channel with system

system emulates the default behavior, so it gives the rc channels if there is
a .condarc with channels, otherwise, the default conda channels.
Add some documentation, update the changelog for --channel
Add dashc option to ensure_override_channels_requires_channel

Also fix the spelling of ensure_override_channels_requires_channel :)
condarc is not the default configuration (fixes #65)
Note issues in the changelog
Merge branch 'master' into channels

Conflicts:
	CHANGELOG.txt
return None when the application is not installed
use ~ as cwd when launching apps
update changelog
Merge branch 'channels'

Conflicts:
	CHANGELOG.txt