INT-3069 Add Wildcard Method to Gateway

https://jira.springsource.org/browse/INT-3069

Allow the first method in a gateway definition to be defined with a wildcard
name (*).

- Headers defined therein are globally applied to all gateway methods.
- Also supports global 'payload-expression'.
- Channels and timeouts cannot be added to the wildcard method.
- Headers defined on a specific method override the global settings.
- An `@Header` in the interface is overridden by a specific <header/> for that method (current behavior)
- An `@Header` in the interface is NOT overridden by a wildcard  <header/>
- Add 3 new SpEL variables:
-- #methodName (synonym for #method - deprecated)
-- #methodString (a string representation of the method showing return type and arg types)
-- #methodObject (the Method object)

	<int:gateway id="sampleGateway"
		service-interface="org.springframework.integration.gateway.GatewayInterfaceTests.Bar"
		default-request-channel="requestChannelBaz">
		<int:method name="*">
			<int:header name="name" expression="#methodName"/>
			<int:header name="string" expression="#methodString"/>
			<int:header name="object" expression="#methodObject"/>
		</int:method>
		<int:method name="baz">
			<int:header name="name" value="overrideWildcard"/>
		</int:method>
	</int:gateway>