Bugfix for PARANAMER-23. Plus some code improvements

There is a bugfix for PARANAMER-23. Basically it is this, in the QdoxParanamerGenerator class:

        for (int i = 0; i < parameters.length; i++) {

            // This code is a bit dodgy to ensure that both inner classes and arrays shows up correctly.
            // It is based in the Type.toString() method, but using getFullyQualifiedName() instead of getValue().
            Type t = parameters[i].getType();
            sb.append(t.getFullyQualifiedName());
            int dimensions = t.getDimensions();
            for (int d = 0; d < dimensions; d++) {
                sb.append(BRACKETS);
            }

            sb.append(comma(i, parameters.length));
        }

Plus some code improvements:
- Using just one StringBuilder per enhanced class at the QdoxParanamerGenerator, instead of creating multiple StringBuffers all the time.
- Some code reformatting.
- More unit tests for the generator to cover generics, inner classes, multiple top-level classes in the same file and class name mismatching class file name.