[WFLY-218] Allow the user and group property file names to be specified.

Previously it was only possible to override the paths to the default files, this pull request adds the ability to override the actual property file names.

In the case of property file name overrides no default realm is assumed, however the previously committed changes for WFLY-1604 allow dynamic discovery of the realm once one user has been added to the custom file.

The file names specified are first checked to see if they are discoverable as an absolute path, if so they are used - if not the default folder searching is used to identify the correct folder.

This change does include a refactoring as the scope of add-user has grown considerably since it's original implementation however this will not be a problem for EAP as all add-user changes are going to need to be ported in one go anyway - the batch scripts reference the add-user module which has had the main class updated.