enhanced the java_class compiler so it can handle multiple constructors

This change would allow you to create multiple Java constructors for a Ruby class like so:

```
class Foo
  def initialize(a=nil)
    # ...
  end

  java_signature 'Foo()'
  def default_cnstr()
    # ...
  end
end
```

Such a capability is required for Java frameworks that require a no-arg constructor, even if your application code doesn't use it.

The call to `java_signature.is_a?(Java::OrgJrubyAstJava_signature::ConstructorSignatureNode)` in the java_class compiler is a little unfortunate. I'd prefer to add an `isConstructor` method to SignatureNode and override it to return true in ConstructorSignatureNode. I will update this PR with that change if it's desired.

Also, I can reopen this PR against master if needed.