Update version to 1.4
Bump version to 1.5rc1
Bump version to 1.5rc2
Create tempfile in the same dir as passwdfile

write_wrapper() uses a tempfile to write the new contents of the
passwdfile and then atomically renames / moves it to the original passwd
file. os.rename() won't work if the tempfile is not created on the same
partition as the original file (EXDEV error). We must, thus, create the
tempfile on the same directory as the original file, to ensure that
os.rename() will work.

shutil.move() cannot replace os.rename(), because it's not atomic wrt
the contents of the original file.
Print dry run output to stdout
Remove redundant shuffle() in gen_salt()
passwd: Don't ask for the password twice
passwd: Add password command line option
Bump version to 1.5next
Merge branch 'release-1.5' into develop
passwd: Replace unused variable
Add Websockets support
Add a sample flashpolicy server (from Adobe)
Support both ws and non-ws clients
Naming changes
Bump version to 1.5rc3
Prepare for 1.5 release
Merge branch 'release-1.5'
Merge branch 'master' into develop