Adding LDAP StartTLS support

Some LDAP server do not allow authenticate with unencrypted password.
This patch is adding the StartTLS support which takes care of the
encryption.

In order to enable the StartTLS, go to "System Settings" and select the
"Enable StartTLS" in the Authentication section. Then make sure that you
add your LDAP certificate into the Java keystore:

$ keytool -import \
          -file /etc/pki/tls/certs/cacert.pem \
          -alias myName \
          -keystore /var/lib/gitbucket/keystore

You can list all keys from the keystore like this:

$ keytool -list -keystore /var/lib/gitbucket/keystore
Moving keystore definition into settings
add HARDWRAPS option
Use the system keystore by default

Default system keystore is in:
$JAVA_HOME/lib/security/jssecacerts
or in:
$JAVA_HOME/lib/security/cacerts

Custom keystore can be set either in /etc/sysconfig/gitbucket by
specifying the following option:
GITBUCKET_JVM_OPTS="-Djavax.net.ssl.trustStore=/path/to/your/cacerts"
or in Gitbucket's System Settings.
Upgrade to scalatra-forms 0.0.6.
Merge pull request #192 from xuwei-k/issue191

add HARDWRAPS option
Fix redirect path encoding.
Merge remote-tracking branch 'origin/master'
(refs #173)Move TransactionFilter to ScalatraBootstrap from web.xml to support Tomcat 7.0.29 or before.
Load Gravatar images always through HTTPS

This patch will force to load Gravatar images always through HTTPS which
will fix the problem with mixed content when accessing the page through
HTTPS.

The problem is that if an HTTPS page includes HTTP content, the HTTP
portion can be read or modified by attackers, even though the main page
is served over HTTPS.
Merge pull request #194 from jtyr/gravatar_https

Load Gravatar images always through HTTPS
(refs #173)Move BasicAuthenticationFilter to ScalatraBootstrap also.
(refs #173)Move BasicAuthenticationFilter to ScalatraBootstrap also.
Upgrade scalatra-forms to 0.0.8.
Merge pull request #190 from jtyr/master

Adding LDAP StartTLS support