additional build changes
diff --git a/pom.xml b/pom.xml
index 2d9129d..1b46285 100644
--- a/pom.xml
+++ b/pom.xml
@@ -46,7 +46,8 @@
 
         <!-- platform versions -->
         <equinox.ver>3.6.2.R36x_v20110210</equinox.ver>
-        <kf.ver>5.3.3</kf.ver>    <!-- Knopflerfish 3.5 -->
+        <kf.ver>5.3.3</kf.ver>
+        <!-- Knopflerfish 3.5 -->
         <felix.ver>2.0.5</felix.ver>
 
         <!-- javadoc configuration -->
@@ -294,8 +295,8 @@
 
             <dependency>
                 <groupId>org.osgi</groupId>
-               	<artifactId>org.osgi.compendium</artifactId>
-               	<version>4.2.0</version>
+                <artifactId>org.osgi.compendium</artifactId>
+                <version>4.2.0</version>
             </dependency>
 
         </dependencies>
@@ -401,40 +402,48 @@
             <resource>
                 <filtering>true</filtering>
                 <directory>src/main/resources</directory>
+                <excludes>
+                    <exclude>git.properties</exclude>
+                </excludes>
             </resource>
         </resources>
 
         <pluginManagement>
             <plugins>
                 <plugin>
+                    <groupId>pl.project13.maven</groupId>
+                    <artifactId>git-commit-id-plugin</artifactId>
+                    <version>2.1.5</version>
+                </plugin>
+                <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-resources-plugin</artifactId>
-                    <version>2.5</version>
+                    <version>2.6</version>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-site-plugin</artifactId>
-                    <version>3.0</version>
+                    <version>3.3</version>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-install-plugin</artifactId>
-                    <version>2.3.1</version>
+                    <version>2.5.1</version>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-assembly-plugin</artifactId>
-                    <version>2.3</version>
+                    <version>2.4</version>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-clean-plugin</artifactId>
-                    <version>2.4.1</version>
+                    <version>2.5</version>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-compiler-plugin</artifactId>
-                    <version>2.3.2</version>
+                    <version>3.1</version>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
@@ -444,12 +453,12 @@
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-deploy-plugin</artifactId>
-                    <version>2.7</version>
+                    <version>2.8.1</version>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-surefire-plugin</artifactId>
-                    <version>2.12</version>
+                    <version>2.16</version>
                     <dependencies>
                         <!-- force surefire to use new junit 4.7+ runner, it would normally auto detect this -->
                         <!-- but since we're not using the official junit dependency it is unable to do so.-->
@@ -457,7 +466,7 @@
                         <dependency>
                             <groupId>org.apache.maven.surefire</groupId>
                             <artifactId>surefire-junit47</artifactId>
-                            <version>2.12</version>
+                            <version>2.16</version>
                         </dependency>
                     </dependencies>
                 </plugin>
@@ -469,12 +478,12 @@
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-war-plugin</artifactId>
-                    <version>2.2</version>
+                    <version>2.4</version>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-javadoc-plugin</artifactId>
-                    <version>2.8.1</version>
+                    <version>2.9.1</version>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
@@ -489,7 +498,7 @@
                 <plugin>
                     <groupId>org.codehaus.mojo</groupId>
                     <artifactId>findbugs-maven-plugin</artifactId>
-                    <version>2.4.0</version>
+                    <version>2.5.2</version>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
@@ -501,91 +510,49 @@
                     <artifactId>maven-clover2-plugin</artifactId>
                     <version>${clover.ver}</version>
                 </plugin>
-                <!--<plugin>-->
-                    <!--<groupId>com.springsource.bundlor</groupId>-->
-                    <!--<artifactId>com.springsource.bundlor.maven</artifactId>-->
-                    <!--&lt;!&ndash;<version>1.0.0.RELEASE</version>&ndash;&gt;-->
-                    <!--<version>1.0.0.M6</version>-->
-                <!--</plugin>-->
-              <plugin>
-              <groupId>org.eclipse.virgo.bundlor</groupId>
+                <plugin>
+                    <groupId>org.eclipse.virgo.bundlor</groupId>
                     <artifactId>org.eclipse.virgo.bundlor.maven</artifactId>
-                    <!--<version>1.1.2.RELEASE</version>-->
-                    <version>1.2.0.M02</version>
-              </plugin>
+                    <version>1.1.2.RELEASE</version>
+                </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-pmd-plugin</artifactId>
-                    <version>2.7.1</version>
+                    <version>3.0.1</version>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-surefire-report-plugin</artifactId>
-                    <version>2.12</version>
+                    <version>2.16</version>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-project-info-reports-plugin</artifactId>
-                    <version>2.4</version>
+                    <version>2.7</version>
                 </plugin>
             </plugins>
         </pluginManagement>
 
         <plugins>
             <plugin>
-                <artifactId>maven-antrun-plugin</artifactId>
+                <groupId>org.eclipse.virgo.bundlor</groupId>
+                <artifactId>org.eclipse.virgo.bundlor.maven</artifactId>
                 <executions>
                     <execution>
-                        <id>jarjar</id>
-                        <phase>package</phase>
+                        <id>bundlor</id>
                         <goals>
-                            <goal>run</goal>
+                            <goal>bundlor</goal>
                         </goals>
-                        <configuration>
-                            <target if="jarjar.run">
-                                <taskdef name="jarjar" classname="com.tonicsystems.jarjar.JarJarTask"
-                                         classpathref="maven.plugin.classpath"/>
-                                <property name="dep.jar" value="${jarjar.dep}"/>
-                                <property name="dep.1.jar" value="${jarjar.dep.1}"/>
-                                <jarjar jarfile="${project.build.directory}${file.separator}${project.build.finalName}.jar">
-                                    <fileset dir="${project.build.outputDirectory}"/>
-                                    <zipfileset src="${dep.jar}" includes="**/*.class" excludes="META-INF/**"/>
-                                    <zipfileset src="${dep.1.jar}" includes="${jarjar.dep.1.include}"
-                                                excludes="META-INF/**,${jarjar.dep.1.exclude}"/>
-                                    <keep pattern="${jarjar.keep}"/>
-                                </jarjar>
-                            </target>
-                        </configuration>
                     </execution>
                 </executions>
-                <dependencies>
-                    <dependency>
-                        <groupId>com.google.jarjar</groupId>
-                        <artifactId>com.springsource.com.tonicsystems.jarjar</artifactId>
-                        <version>1.0.0</version>
-                    </dependency>
-                </dependencies>
-            </plugin>
-
-            <plugin>
-              <groupId>org.eclipse.virgo.bundlor</groupId>
-              <artifactId>org.eclipse.virgo.bundlor.maven</artifactId>
-              <executions>
-                <execution>
-                  <id>bundlor</id>
-                  <goals>
-                    <goal>bundlor</goal>
-                  </goals>
-                </execution>
-              </executions>
-              <configuration>
-                <properties>
-                  <bundle.description>${project.description}</bundle.description>
-                </properties>
-                <manifestTemplatePath>${basedir}/template.mf</manifestTemplatePath>
-                <enabled>${bundlor.enabled}</enabled>
-                <failOnWarnings>false</failOnWarnings>
-              </configuration>
+                <configuration>
+                    <properties>
+                        <bundle.description>${project.description}</bundle.description>
+                    </properties>
+                    <manifestTemplatePath>${basedir}/template.mf</manifestTemplatePath>
+                    <enabled>${bundlor.enabled}</enabled>
+                    <failOnWarnings>false</failOnWarnings>
+                </configuration>
             </plugin>
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
@@ -755,6 +722,90 @@
                 </configuration>
             </plugin>
 
+
+            <plugin>
+                <groupId>pl.project13.maven</groupId>
+                <artifactId>git-commit-id-plugin</artifactId>
+                <version>2.1.5</version>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>revision</goal>
+                        </goals>
+                    </execution>
+                </executions>
+
+                <configuration>
+                    <!-- that's the default value, you don't have to set it -->
+                    <prefix>git</prefix>
+                    <!-- that's the default value -->
+                    <dateFormat>dd.MM.yyyy '@' HH:mm:ss z</dateFormat>
+                    <!-- true is default here, it prints some more information during the build -->
+                    <verbose>true</verbose>
+                    <!--
+                        If you'd like to tell the plugin where your .git directory is,
+                        use this setting, otherwise we'll perform a search trying to
+                        figure out the right directory. It's better to add it explicit IMHO.
+                    -->
+                    <dotGitDirectory>${project.basedir}/.git</dotGitDirectory>
+
+                    <!-- ALTERNATE SETUP - GENERATE FILE -->
+                    <!--
+                        If you want to keep git information, even in your WAR file etc,
+                        use this mode, which will generate a properties file (with filled out values)
+                        which you can then normally read using new Properties().load(/**/)
+                    -->
+
+                    <!--
+                        this is true by default; You may want to set this to false, if the plugin should run inside a
+                        <packaging>pom</packaging> project. Most projects won't need to override this property.
+
+                        For an use-case for this kind of behaviour see: https://github.com/ktoso/maven-git-commit-id-plugin/issues/21
+                    -->
+                    <skipPoms>true</skipPoms>
+
+                    <!-- this is false by default, forces the plugin to generate the git.properties file -->
+                    <generateGitPropertiesFile>true</generateGitPropertiesFile>
+
+                    <!-- The path for the to be generated properties file, it's relative to ${project.basedir} -->
+                    <generateGitPropertiesFilename>src/main/resources/git.properties</generateGitPropertiesFilename>
+
+                    <!-- true by default, controls whether the plugin will fail when no .git directory is found, when set to false the plugin will just skip execution -->
+                    <!-- @since 2.0.4 -->
+                    <failOnNoGitDirectory>false</failOnNoGitDirectory>
+
+                    <!-- @since 2.1.0 -->
+                    <!--
+                        read up about git-describe on the in man, or it's homepage - it's a really powerful versioning helper
+                        and the recommended way to use git-commit-id-plugin. The configuration bellow is optional,
+                        by default describe will run "just like git-describe on the command line", even though it's a JGit reimplementation.
+                    -->
+                    <gitDescribe>
+                        <!-- don't generate the describe property -->
+                        <skip>false</skip>
+                        <!--
+                            if no tag was found "near" this commit, just print the commit's id instead,
+                            helpful when you always expect this field to be not-empty
+                        -->
+                        <always>false</always>
+                        <!--
+                             how many chars should be displayed as the commit object id?
+                             7 is git's default,
+                             0 has a special meaning (see end of this README.md),
+                             and 40 is the maximum value here
+                        -->
+                        <abbrev>7</abbrev>
+
+                        <!-- when the build is triggered while the repo is in "dirty state", append this suffix -->
+                        <dirty>-dirty</dirty>
+                        <!--
+                             always print using the "tag-commits_from_tag-g_commit_id-maybe_dirty" format, even if "on" a tag.
+                             The distance will always be 0 if you're "on" the tag.
+                        -->
+                        <forceLongFormat>false</forceLongFormat>
+                    </gitDescribe>
+                </configuration>
+            </plugin>
         </plugins>
     </build>
 
@@ -922,14 +973,7 @@
             <name>maven repo</name>
             <url>http://repo1.maven.org/maven2/</url>
         </pluginRepository>
-        <!-- clover repository -->
-      <!--
-        <pluginRepository>
-            <id>atlassian-m2-repository</id>
-            <name>Atlassian Maven 2.x Repository</name>
-            <url>http://repository.atlassian.com/maven2</url>
-        </pluginRepository>
-      -->
+
         <pluginRepository>
             <id>com.springsource.repository.bundles.release</id>
             <name>SpringSource Enterprise Bundle Repository - SpringSource Bundle Releases</name>
@@ -950,16 +994,18 @@
                 <enabled>true</enabled>
             </snapshots>
         </pluginRepository>
+
         <pluginRepository>
-          <id>com.springsource.repository.bundles.external</id>
-          <name>SpringSource Enterprise Bundle Repository - External Bundle Release</name>
-          <url>http://repository.springsource.com/maven/bundles/external</url>
+            <id>com.springsource.repository.bundles.external</id>
+            <name>SpringSource Enterprise Bundle Repository - External Bundle Release</name>
+            <url>http://repository.springsource.com/maven/bundles/external</url>
         </pluginRepository>
-      <pluginRepository>
-        <id>eclipse.virgo.build.bundles.release</id>
-        <name>Eclipse Virgo Build</name>
-        <url>http://build.eclipse.org/rt/virgo/maven/bundles/release</url>
-      </pluginRepository>
+
+        <pluginRepository>
+            <id>eclipse.virgo.build.bundles.release</id>
+            <name>Eclipse Virgo Build</name>
+            <url>http://build.eclipse.org/rt/virgo/maven/bundles/release</url>
+        </pluginRepository>
 
     </pluginRepositories>
 
@@ -969,16 +1015,19 @@
             <name>SpringSource Enterprise Bundle Repository - SpringSource Bundle Releases</name>
             <url>http://repository.springsource.com/maven/bundles/release/</url>
         </repository>
+
         <repository>
             <id>com.springsource.repository.bundles.external</id>
             <name>SpringSource Enterprise Bundle Repository - External Bundle Release</name>
             <url>http://repository.springsource.com/maven/bundles/external</url>
         </repository>
+
         <repository>
             <id>com.springsource.repository.bundles.milestone</id>
             <name>SpringSource Enterprise Bundle Repository - SpringSource Bundle Milestones</name>
             <url>http://repository.springsource.com/maven/bundles/milestone</url>
         </repository>
+
         <repository>
             <id>com.springsource.repository.bundles.snapshot</id>
             <name>SpringSource Enterprise Bundle Repository - Snapshots</name>
@@ -993,21 +1042,25 @@
             <name>Spring Portfolio Release Repository</name>
             <url>http://maven.springframework.org/release</url>
         </repository>
+
         <repository>
             <id>spring-external</id>
             <name>Spring Portfolio External Repository</name>
             <url>http://maven.springframework.org/external</url>
         </repository>
+
         <repository>
             <id>spring-milestone</id>
             <name>Spring Portfolio Milestone Repository</name>
             <url>http://maven.springframework.org/milestone</url>
         </repository>
+
         <repository>
             <id>spring-ext</id>
             <name>Spring External Dependencies Repository</name>
             <url>http://springframework.svn.sourceforge.net/svnroot/springframework/repos/repo-ext/</url>
         </repository>
+
         <!-- used when building against Spring snapshots -->
         <repository>
             <id>spring-snapshot</id>
@@ -1024,6 +1077,7 @@
             <url>http://www.knopflerfish.org/maven2/</url>
         </repository>
 
+        <!--todo: is this still needed -->
         <repository>
             <id>i21-s3-osgi-repo</id>
             <name>i21 osgi artifacts repo</name>
@@ -1033,11 +1087,11 @@
             <url>http://maven.springframework.org/osgi</url>
         </repository>
 
-      <repository>
-        <id>eclipse.virgo.build.bundles.release</id>
-        <name>Eclipse Virgo Build</name>
-        <url>http://build.eclipse.org/rt/virgo/maven/bundles/release</url>
-      </repository>
+        <repository>
+            <id>eclipse.virgo.build.bundles.release</id>
+            <name>Eclipse Virgo Build</name>
+            <url>http://build.eclipse.org/rt/virgo/maven/bundles/release</url>
+        </repository>
     </repositories>
 
 </project>
\ No newline at end of file