Add travis-ci, hopefully without spamming the BC folks

Pretty sure BouncyCastle needs OpenJDK to build and run tests

I don't know how to register the unsigned JCE provider on Oracle JDK,
OpenJDK doesn't seem to check.

try to make travis output clearer

http://stackoverflow.com/a/17942820/438886

The '--info' flag hopefully will stop travis builds from
dying from the no-output-in-10-minutes problem, but weirdly is
also the only thing that makes spongycastle tests pass...

https://twitter.com/rtyley/status/425373078084784128

https://travis-ci.org/rtyley/spongycastle/builds/17299026
Git-ignore files generated during Gradle build

These are some of the files/dirs (that you wouldn't want to check-in to
source-control) that I see after getting the gradle-build going:
Gradle: Remove mail the easiest way...

On Android, the dependencies make supporting bc-mail very hard.

Previously I did an rm -Rf on the 'mail' folder of bc, but actually,
just removing the include from settings is way more Git-friendly for
rebasing.
Delete failing McEliece key-pair-generator tests

The keyfactory service doesn't seem to register, leading to a
NoSuchAlgorithmException.
Don't run CertPathBuilderTest & CertPathValidatorTest - both fail

These tests both fail with:

    No CRLs found for issuer "CN=Test CA Certificate"

...none of the CRL files in the project contain that issuer so far as I can
see, so it's going to be difficult to meet that requirement.

CertPathValidatorTest currently fails with:

    org.bouncycastle.jce.exception.ExtCertPathValidatorException: No CRLs found for issuer "CN=Test CA Certificate"
    	at org.bouncycastle.jce.provider.RFC3280CertPathUtilities.processCertA(RFC3280CertPathUtilities.java:1516)
    	at org.bouncycastle.jce.provider.PKIXCertPathValidatorSpi.engineValidate(PKIXCertPathValidatorSpi.java:274)
    	at java.security.cert.CertPathValidator.validate(CertPathValidator.java:279)
    	at org.bouncycastle.jce.provider.test.CertPathValidatorTest.performTest(CertPathValidatorTest.java:281)
    	at org.bouncycastle.util.test.SimpleTest.perform(SimpleTest.java:49)
    	at org.bouncycastle.jce.provider.test.AllTests.testJCE(AllTests.java:23)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:606)
    	at junit.framework.TestCase.runTest(TestCase.java:176)
    	at junit.framework.TestCase.runBare(TestCase.java:141)
    	at junit.framework.TestResult$1.protect(TestResult.java:122)
    	at junit.framework.TestResult.runProtected(TestResult.java:142)
    	at junit.framework.TestResult.run(TestResult.java:125)
    	at junit.framework.TestCase.run(TestCase.java:129)
    	at junit.framework.TestSuite.runTest(TestSuite.java:255)
    	at junit.framework.TestSuite.run(TestSuite.java:250)
    	at junit.framework.TestSuite.runTest(TestSuite.java:255)
    	at junit.framework.TestSuite.run(TestSuite.java:250)
    	at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:84)
    	at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecuter.runTestClass(JUnitTestClassExecuter.java:80)
    	at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecuter.execute(JUnitTestClassExecuter.java:47)
    	at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassProcessor.processTestClass(JUnitTestClassProcessor.java:69)
    	at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:49)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:606)
    	at org.gradle.messaging.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
    	at org.gradle.messaging.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
    	at org.gradle.messaging.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:32)
    	at org.gradle.messaging.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
    	at com.sun.proxy.$Proxy2.processTestClass(Unknown Source)
    	at org.gradle.api.internal.tasks.testing.worker.TestWorker.processTestClass(TestWorker.java:103)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:606)
    	at org.gradle.messaging.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
    	at org.gradle.messaging.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
    	at org.gradle.messaging.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:355)
    	at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:66)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    	at java.lang.Thread.run(Thread.java:724)
    Caused by: org.bouncycastle.jce.provider.AnnotatedException: No CRLs found for issuer "CN=Test CA Certificate"
    	at org.bouncycastle.jce.provider.CertPathValidatorUtilities.getCompleteCRLs(CertPathValidatorUtilities.java:1224)
    	at org.bouncycastle.jce.provider.RFC3280CertPathUtilities.checkCRL(RFC3280CertPathUtilities.java:1750)
    	at org.bouncycastle.jce.provider.RFC3280CertPathUtilities.checkCRLs(RFC3280CertPathUtilities.java:1986)
    	at org.bouncycastle.jce.provider.RFC3280CertPathUtilities.processCertA(RFC3280CertPathUtilities.java:1506)
    	... 45 more

org.bouncycastle.jce.provider.test.AllTests > testJCE FAILED
    junit.framework.AssertionFailedError: CertPathValidator: Exception: org.bouncycastle.jce.exception.ExtCertPathValidatorException: No CRLs found for issuer "CN=Test CA Certificate"
        at junit.framework.Assert.fail(Assert.java:57)
        at junit.framework.TestCase.fail(TestCase.java:227)
        at org.bouncycastle.jce.provider.test.AllTests.testJCE(AllTests.java:32)
floom
Gradle: Upload signed Spongy Castle artifacts to Sonatype OSS Nexus

http://yennicktrevels.com/blog/2013/10/11/automated-gradle-project-deployment-to-sonatype-oss-repository/

Using a 'spongycastle' subgroup (ie com.madgag.spongycastle) to give a useful
grouping, apparently this is legit:

https://docs.sonatype.org/display/Repository/Choosing+your+Coordinates

Also guard against missing gradle.properties for travis, which doesn't have
to do signing or uploading to sonatype.
Fix provider mapping for KeyStore - should be "BC" not "SC"

I think "BC" here is a KeyStore format, not a provider.

Would be nice to not have to make this correction, but without
code changes, I think it wouldn't be easy to write a distingushing
ssed expression.
Disable test that attempts to deserialise org.bouncycastle class