Initial support for Java Parameter Names

Do not merge yet. This pull request is first for discuss about Java Parameters. I've tested this code in my application and works fine. And since this pull request is only a draft, I didn't write tests neither docs until now.

We have some issues for people who uses Java 8, because Paranamer can't recognize bytecode that have lambdas. Parameter wasn't designed to work with Java 8, because Java 8 already have out-of-box methods to get parametet names.

So this pull request checks if app is running under Java 8, and enable a component that uses Java Reflection to get parameter names. 

I don't like to use reflection because have less performance against normal invocation. But to avoid using reflection we need to change compiler version to Java 8. So I don't know what's the best option.

Closes #608