Introduced separate identifier for ivy publications
- Use IvyProjectIdentity instead of Module for identifying ivy publication
- Ivy publication identifier is now based on a snapshot of project state at time publication was created
- Fixed ivy publication so that ivy status is correctly populated in descriptor
   - Added some basic integ test coverage for ivy status
- Moved MavenProjectIdentity.getPackaging() onto MavenPomInternal
Reworked package structure to remove package cycle (both ivy & maven)
Removed groupId/artifactId/version properties from DefaultMavenPublication: they are not (yet) needed.