Removed redundant test: most publishing tests now perform a resolve of the published module
Added DeferredConfigurable interface for implementing extensions that don't want to handle inputs that change after configuration
- extensions implementing interface will have:
   - all configuration actions deferred until first access to extension
   - no configuration actions allowed after configured on first access
Made PublishingExtension implement DeferredConfigurable
- Updated MavenPublishPlugin and IvyPublishPlugin to only configure the PublishingExtension and not access
- Configure the PublishingExtension in Project.afterEvaluate() to ensure that tasks are created
Updated integration tests for deferred-configuration publishing extension
- Place publishing block early in build scripts to demonstrate deferred configuration
    - Use different versions in multiproject publish tests to demonstrate deferred configuration of each publishing block
- Moved all task access inside of publishing block to ensure tasks have been created
Switched DeferredConfigurable to be an Annotation rather than and interface