Add 'non_unique' argument to user functions.

* fabtools.user.create
* fabtools.user.modify
* fabtools.require.users.user

When non_unique=True, it allows to create or modify a user account with
a duplicate (non-unique) UID.
Corrects the default value of 'non-unique' agrument.

The default value is now `False`
Add test for creating user with non-unique uid.
the required file from remote url should be saved to given path.
Merge branch 'non-unique'
Merge branch 'require-file'