OPENDJ-1536 OPENDJ-1285 Rename FutureResult classes hierarchy in the SDK to enhance code consistency

* org.forgerock.opendj.ldap package:
** Rename FutureResult to LdapPromise
** Rename FutureResultImpl to LdapPromiseImpl and move it to org.forgerock.opendj.ldap.spi
** Rename the util class FutureResultWrapper to LdapPromises and move it to org.forgerock.opendj.ldap.spi package 
** Solve some bugs in HeartBeatConnectionFactory class

org.forgerock.opendj.ldap.spi
** Merge old LDAPFutureResultImpl and AbstractLDAPFutureResultImpl and rename it as ResultLdapPromiseImpl
** Remove AbstractLDAPFutureResultImpl, LDAPFutureResultImpl and LDAPCompareFutureResultImpl
** Rename LDAP[Bind | Extended | Search]FutureResultImpl to [Bind | Extended | Search]ResultLdapPromiseImpl
** Add static methods in LdapPromises to return *LdapPromiseImpl instances

git-svn-id: https://svn.forgerock.org/opendj/trunk@11065 41b1ffd8-f28e-4786-ab96-9950f0a78031