Only override set methods for 1-arg methods.

AsmBackedClassGenerator currently "overrides" the set method for any method
with the same name as the property, regardless of how many arguments it has.
The set method is intended to be an alias for the setter without starting with
"set" (e.g. instead of setProp(String), it would be prop(String)).

By accepting any method with the property's name, it is generating more set
methods than intended. If there is a prop(String, String) and a prop(String,
String, String) it will generate two prop(String) methods, resulting in a
ClassFormatError (as noted in GRADLE-2695).

This commit changes the overrideSetMethod() method to only perform the
override if the passed metaMethod is a one arg method.
Asm class generator should add set methods if there are only multi-arg.

Previous commit changed AsmBackedClassGenerator to only accept 1-arg methods
to be overridden. While this fixed the ClassFormatError, it also prevented
the generator from adding new 1-arg set methods, if there are only multi-arg
ones.

This commit updates the logic in AbstractClassGenerator to only attempt to
override if it is a 1-arg method. If not methods were overridden it will
add a new 1-arg method.
Merge pull request #211 from ajoberstar/issue-2695

Fix GRADLE-2695: ClassFormatError introduced in 1.3