Move root detection entirely to setup.py
Rename set_red_spider_root to get_red_spider_root in rsshell.py
Let setup.py chdir to RED_SPIDER_ROOT for more elegant program logic
Refactor setup: first step towards true installation
Add Windows rsshell installation with Registry
Add winreg type mismatch warning message to setup
Finish system install logic in setup
Fix call to str.join in setup:install_rsshell_windows
Fix _winreg import, PATH inclusion in setup win install
Remove system installation for Windows from setup

Made %HOME% the default install location for rsshell in Windows. This
is not a system install as intended but at least it works. A complete
solution in the future might require a full-blown MSI installer.

A working system installer for Windows was almost completed, but I
wasn't able to solve a problem with file/directory permissions. I was
running setup.py from an administrator account, and the script was
apparently sufficiently privileged to write to %PROGRAMFILES% since
the check on line 144 didn't fire. However, on line 189 the program
was interrupted with an IOError. Somehow, having write permissions to
a directory in Windows doesn't mean that one can create
subdirectories.

I tried manually creating the subdirectory (%PROGRAMFILES%\Red Spider
Project) and then running the script again, but it would just get
stuck on the next creation at line 191. I've attached the traceback at
the end of this commit message.

I've created the branch 'jgonggrijp/setup-windows' so that the old
state of setup.py can be permanently accessed. Note that the line
numbers in my explanation above, as well as those in the traceback
below, refer to the state in jgonggrijp/setup-windows, not to the
state in the present commit.

The install_rsshell_windows function has been moved past the
invocation of main.

Traceback (most recent call last):
  File "C:\Users\Julian\Documents\RedSpider\setup.py", line 314, in <module>
    main()
  File "C:\Users\Julian\Documents\RedSpider\setup.py", line 53, in main
    install()
  File "C:\Users\Julian\Documents\RedSpider\setup.py", line 99, in install
    install_rsshell()
  File "C:\Users\Julian\Documents\RedSpider\setup.py", line 132, in install_rsshell
    install_rsshell_windows(src_file, fname)
  File "C:\Users\Julian\Documents\RedSpider\setup.py", line 166, in install_rsshell_windows
    rsshell_install_finish(src_file, rsshell_target_dir, fname)
  File "C:\Users\Julian\Documents\RedSpider\setup.py", line 191, in rsshell_install_finish
    copy2(src_file, bin_file)
  File "C:\Python27\lib\shutil.py", line 128, in copy2
    copyfile(src, dst)
  File "C:\Python27\lib\shutil.py", line 83, in copyfile
    with open(dst, 'wb') as fdst:
IOError: [Errno 13] Permission denied: 'C:\\Program Files\\Red Spider Project\\rsshell.py'
Fix Windows home path initialization in setup.py
[issue 11] Option 4: install rsshell internally but do add to PATH

While considering the option to install rsshell internally in the
project root on Windows (instead of system-wide), I realized that this
would be the best option anyway for all platforms. It improves
consistency across platforms, it simplifies the program logic of
setup.py, it removes the need to run setup.py with administrative
rights and it allows multiple users on the same computer to install
different version of rsshell.

The only real difference with previous versions on the master branch
is that a special subdirectory is reserved for externally visible
executables: extbin, with a matching extension of the user's PATH
settings. This directory has also been added to the .gitignore file.
Refactor 'append_user_path' to 'extend_user_env' in setup.py
Remove AssertionError catch from extend_user_env_windows in setup.py
Save RED_SPIDER_ROOT to user environment as well

We're appending /extbin to the user's PATH anyway, so it makes sense
to do the same thing with RED_SPIDER_ROOT. This removes the need to
create ~/.config/xkcdRedSpider (POSIX) or %APPDATA%\xkcdRedSpider
(Windows).

From now on, we'll need to modify only one location that is not within
the project root: ~/.profile on POSIX or HKEY_CURRENT_USER in the
Registry on Windows.
Add clarifying comment to setup.py
Merge branch 'master' into rsroot-env

There are two reasons to merge upstream into topic:

 1. The changes on topic warrant an update of Readme.md, which is
    outdated.
 2. Since master on upstream and local have diverged for so long, it's
    a safe testdrive for merge conflicts.
Add stability/testing disclaimer to Readme.md
Improve historical accuracy+completeness in Who, When, Credits of Readme.md
Replace repository URL by homepage URL in Readme.md