Extend LdapGroupProvider to support nested group in LDAP

Version 1
    1. After I set up Openfire server to use LDAP as providers, roster groups don't show up in any XMPP client. I figure out there is no "loadProperties(Group group)" implementation in LdapGroupProvider. So I insert some default values into the group properties by overriding loadProperties method , then roster groups show up correctly.
    2. My LdapGroupProvider supports nested group in LDAP. It means group member might be a group and extracting the sub-groups recursively makes sense.
    3. The attachment is the source file. Please merge it to the next version. Thank you.