Issue title: getUsersForGroup Doesn't Return Values When options are specified
 Issue body: Hi.  When I do a getUsersForGroup without using the Options parameter it returns all members of the group.  When I add the optional parameters it doesn't return any records (optional params work fine with other calls.)  No error is returned, just no records.  Code is as follows:

```
    var opts = {
      attributes: ['cn']
    };

    ad.getUsersForGroup(opts,'AD Group', function(err, contactList) {
        if (err) {
            logging.logMessage('ERROR: ' +JSON.stringify(err));
            res.render('contacts', { title: 'Contact List', contactList: 'none' });
            return;
        }

        if (! contactList) {
            logging.logMessage(' not found.');
            res.render('contacts', { title: 'Contact List', contactList: 'none' });
        }
        else {
            logging.logMessage('Users for: Dispenser Configuration');
            console.log(contactList);
            res.render('contacts', { title: 'Contact List', contactList: contactList });
```

 Comments: 
 Comment 0: Can you try the following patch:

```diff
index 6715e98..997cc8d 100755
--- a/lib/activedirectory.js
+++ b/lib/activedirectory.js
@@ -656,7 +656,7 @@ function getGroupMembershipForDN(opts, dn, stack, callback) {
   opts = _.defaults(_.omit(opts || {}, 'filter', 'scope', 'attributes'), {
     filter: '(member='+parseDistinguishedName(dn)+')',
     scope: 'sub',
-    attributes: _.union((opts || {}).attributes || defaultAttributes.group, [ 'objectCategory', 'groupType', 'distinguishedName', 'cn' ])
+    attributes: _.union((opts || {}).attributes || defaultAttributes.group, [ 'objectCategory', 'groupType', 'member', 'distinguishedName', 'cn' ])
   });
   search.call(self, opts, function(err, results) {
     if (err) {
@@ -1375,10 +1375,10 @@ ActiveDirectory.prototype.findGroup = function findGroup(opts, groupName, callba
   }
   log.trace('findGroup(%j,%s)', opts, groupName);

-  opts = _.defaults(opts || {}, {
+  opts = _.defaults(_.omit(opts || {}, 'attributes'), {
     filter: getGroupQueryFilter.call(self, groupName),
     scope: 'sub',
-    attributes: defaultAttributes.group || []
+    attributes: _.union((opts || {}).attributes || defaultAttributes.group, [ 'objectCategory', 'groupType', 'member', 'distinguishedName', 'cn' ])
   });
   search.call(self, opts, function onSearch(err, results) {
     if (err) {
```
 Comment 1: Hi George.  How do I install a patch?

From: George Heeres [mailto:kayla66@example.org]
Sent: May 19, 2015 7:29 PM
To: gheeres/node-activedirectory
Cc: Grant MacDonald
Subject: Re: [node-activedirectory] getUsersForGroup Doesn't Return Values When options are specified (#79)

Can you try the following patch:

index 6715e98..997cc8d 100755

--- a/lib/activedirectory.js

+++ b/lib/activedirectory.js

@@ -656,7 +656,7 @@ function getGroupMembershipForDN(opts, dn, stack, callback) {

   opts = _.defaults(_.omit(opts || {}, 'filter', 'scope', 'attributes'), {

```
 filter: '(member='+parseDistinguishedName(dn)+')',

 scope: 'sub',
```
-    attributes: _.union((opts || {}).attributes || defaultAttributes.group, [ 'objectCategory', 'groupType', 'distinguishedName', 'cn' ])
-    attributes: _.union((opts || {}).attributes || defaultAttributes.group, [ 'objectCategory', 'groupType', 'member', 'distinguishedName', 'cn' ])
  
  });
  
  search.call(self, opts, function(err, results) {
  
   if (err) {

@@ -1375,10 +1375,10 @@ ActiveDirectory.prototype.findGroup = function findGroup(opts, groupName, callba

   }

   log.trace('findGroup(%j,%s)', opts, groupName);
-  opts = _.defaults(opts || {}, {
-  opts = _.defaults(_.omit(opts || {}, 'attributes'), {
  
   filter: getGroupQueryFilter.call(self, groupName),
  
   scope: 'sub',
-    attributes: defaultAttributes.group || []
-    attributes: _.union((opts || {}).attributes || defaultAttributes.group, [ 'objectCategory', 'groupType', 'member', 'distinguishedName', 'cn' ])
  
  });
  
  search.call(self, opts, function onSearch(err, results) {
  
   if (err) {

—
Reply to this email directly or view it on GitHubhttps://github.com/gheeres/node-activedirectory/issues/79#issuecomment-103684345.

 Comment 2: Thanks George.  I made the changes to activedirectory.js and it fixed the problem.  If possible, please add the capability to get the phone # information (mobile and telephone number.)  

All the best,
Grant.

 Comment 3: Great. I'll push an updated NPM version as soon as I can get confirmation of resolution for issue #78.

commit: fd4b83d8164189889c7e860c58d75b252f21de9b

> If possible, please add the capability to get the phone # information (mobile and telephone number.)

That is a configuration option. You can either specify that using the opts object when you make a request, or you can override the default user attributes for all queries. The docs have an example on how to specify the default attributes when you create the ActiveDirectory instance.

The attributes you'll be interested in are:

```
telephoneNumber
mobile
```

An example of override the defaults would be:

``` javascript
var ad = new ActiveDirectory({ url: 'ldap://dc.domain.com',
                               baseDN: 'dc=domain,dc=com',
                               username: 'kayla66@example.org',
                               password: 'password',
                               attributes: {
                                 user: [ 'telephoneNumber', 'mobile', 'cn', 'userPrinicipalName' ],
                               }
                              });
```

An example of using the opts would be:

``` javascript
var ad = new ActiveDirectory(config);
var opts = {
  attributes: [ 'telephoneNumber', 'mobile', 'cn', 'userPrinicipalName' ]
};
ad.findUser(opts, sAMAccountName, function(err, user) {
  if (err) {
    console.log('ERROR: ' +JSON.stringify(err));
    return;
  }

  if (! user) console.log('User: ' + sAMAccountName + ' not found.');
  else console.log(JSON.stringify(user));
});
```

 Comment 4: Hi George.  I have added the telephoneNumber and mobile fields to the opts variable and it is not returning them (I'll try again with the new release.)  However, it returns fields that I do not have in the opts variable (ie. displayName, sAMAccountName and userPrincipalName.)

The same opt settings works find with the findUser method (ie. getting mobile, telephoneNumber, etc.)

Thanks. Grant.
 Comment 5: What is the exact / updated code you are using?
 Comment 6: npm -v activedirectory shows 1.4.28
 Comment 7: I just pushed a new commit. The custom opts/attribute handling was not consistently applied. Please pull down the GIT version and test.
 Comment 8: Works!  Thanks George.
{'source': 'GithubIssues', 'repo_name_with_owner': 'gheeres/node-activedirectory', 'issue_id': 78255075, 'repo_stars': 528.0}