diff --git a/pom.xml b/pom.xml
index 9069d57..7dddfa1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,213 +1,223 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<groupId>com.intel.jndn.utils</groupId>
-	<artifactId>jndn-utils</artifactId>
-	<version>1.0.3</version>
-	<name>jndn-utils</name>
-	<description>Collection of tools to simplify synchronous and asynchronous data transfer over the NDN network</description>
-	<url>https://github.com/01org/jndn-utils</url>
-	<packaging>jar</packaging>
-	<licenses>
-		<license>
-			<name>LGPL v3</name>
-			<url>https://www.gnu.org/licenses/lgpl.html</url>
-		</license>
-	</licenses>
-	<developers>
-		<developer>
-			<name>Andrew Brown</name>
-			<url>http://github.com/andrewsbrown</url>
-		</developer>
-	</developers>
-	<distributionManagement>
-		<snapshotRepository>
-			<id>ossrh</id>
-			<url>https://oss.sonatype.org/content/repositories/snapshots</url>
-		</snapshotRepository>
-	</distributionManagement>
-	<scm>
-		<url>https://github.com/01org/jndn-utils</url>
-		<connection>scm:git:git@github.com:01org/jndn-utils.git</connection>
-		<developerConnection>scm:git:git@github.com:01org/jndn-utils.git</developerConnection>
-	</scm>
-	<dependencies>
-		<dependency>
-			<groupId>net.named-data</groupId>
-			<artifactId>jndn</artifactId>
-			<version>0.13</version>
-		</dependency>
-		<!-- Test dependencies -->
-		<dependency>
-			<groupId>junit</groupId>
-			<artifactId>junit</artifactId>
-			<version>4.10</version>
-			<scope>test</scope>
-		</dependency>
-		<dependency>
-			<groupId>com.intel.jndn.mock</groupId>
-			<artifactId>jndn-mock</artifactId>
-			<version>1.0.2</version>
-			<scope>test</scope>
-		</dependency>
-	</dependencies>
-	<properties>
-		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-		<maven.compiler.source>1.8</maven.compiler.source>
-		<maven.compiler.target>1.8</maven.compiler.target>
-	</properties>
-	<build>
-		<plugins>
-			<plugin>
-				<groupId>org.jacoco</groupId>
-				<artifactId>jacoco-maven-plugin</artifactId>
-				<version>0.7.4.201502262128</version>
-				<executions>
-					<execution>
-						<id>pre-unit-test</id>
-						<goals>
-							<goal>prepare-agent</goal>
-						</goals>
-					</execution>
-					<execution>
-						<id>post-unit-test</id>
-						<phase>test</phase>
-						<goals>
-							<goal>report</goal>
-						</goals>
-					</execution>
-				</executions>
-			</plugin>
-		</plugins>
-	</build>
-	<profiles>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
 
-		<!-- Use OSSRH-directed plugins (see http://central.sonatype.org/pages/apache-maven.html)
-		for deployment to Maven central; e.g. `mvn deploy -P ossrh`-->
-		<profile>
-			<id>ossrh</id>
-			<build>
-				<plugins>
-					<plugin>
-						<groupId>org.apache.maven.plugins</groupId>
-						<artifactId>maven-source-plugin</artifactId>
-						<version>2.4</version>
-						<executions>
-							<execution>
-								<id>attach-sources</id>
-								<goals>
-									<goal>jar-no-fork</goal>
-								</goals>
-							</execution>
-						</executions>
-					</plugin>
-					<plugin>
-						<groupId>org.apache.maven.plugins</groupId>
-						<artifactId>maven-javadoc-plugin</artifactId>
-						<version>2.10.2</version>
-						<configuration>
-							<additionalparam>-Xdoclint:none</additionalparam>
-						</configuration>
-						<executions>
-							<execution>
-								<id>attach-javadocs</id>
-								<goals>
-									<goal>jar</goal>
-								</goals>
-							</execution>
-						</executions>
-					</plugin>
-					<plugin>
-						<groupId>org.sonatype.plugins</groupId>
-						<artifactId>nexus-staging-maven-plugin</artifactId>
-						<version>1.6.3</version>
-						<extensions>true</extensions>
-						<configuration>
-							<serverId>ossrh</serverId>
-							<stagingProfileId>a80137db01223a</stagingProfileId>
-							<nexusUrl>https://oss.sonatype.org/</nexusUrl>
-							<autoReleaseAfterClose>true</autoReleaseAfterClose>
-						</configuration>
-					</plugin>
-					<plugin>
-						<groupId>org.apache.maven.plugins</groupId>
-						<artifactId>maven-gpg-plugin</artifactId>
-						<version>1.5</version>
-						<executions>
-							<execution>
-								<id>sign-artifacts</id>
-								<phase>verify</phase>
-								<goals>
-									<goal>sign</goal>
-								</goals>
-							</execution>
-						</executions>
-					</plugin>
-				</plugins>
-			</build>
-		</profile>
+  <groupId>com.intel.jndn.utils</groupId>
+  <artifactId>jndn-utils</artifactId>
+  <version>1.0.3</version>
+  <name>jndn-utils</name>
+  <description>Collection of tools to simplify synchronous and asynchronous data transfer over the NDN network
+  </description>
+  <url>https://github.com/01org/jndn-utils</url>
+  <packaging>jar</packaging>
 
-		<!-- Use failsafe to run integration tests with an NFD instance; e.g.
-		`mvn verify -Pnfd-integration-tests -Dnfd.ip=10.0.0.1; these are not run by default
-		due to the external NFD dependency -->
-		<profile>
-			<id>nfd-integration-tests</id>
-			<build>
-				<plugins>
-					<plugin>
-						<groupId>org.apache.maven.plugins</groupId>
-						<artifactId>maven-failsafe-plugin</artifactId>
-						<version>2.18.1</version>
-						<executions>
-							<execution>
-								<id>runIntegrationTests</id>
-								<phase>integration-test</phase>
-								<goals>
-									<goal>integration-test</goal>
-								</goals>
-							</execution>
-							<execution>
-								<id>verifyIntegrationTests</id>
-								<phase>verify</phase>
-								<goals>
-									<goal>verify</goal>
-								</goals>
-							</execution>
-						</executions>
-					</plugin>
-				</plugins>
-			</build>
-		</profile>
+  <licenses>
+    <license>
+      <name>LGPL v3</name>
+      <url>https://www.gnu.org/licenses/lgpl.html</url>
+    </license>
+  </licenses>
 
-		<!-- Run `mvn clean javadoc:javadoc scm-publish:publish-scm -P docs` to push
-		Javadoc to Github -->
-		<profile>
-			<id>docs</id>
-			<build>
-				<plugins>
-					<plugin>
-						<groupId>org.apache.maven.plugins</groupId>
-						<artifactId>maven-javadoc-plugin</artifactId>
-						<version>2.10.2</version>
-						<configuration>
-							<additionalparam>-Xdoclint:none</additionalparam>
-						</configuration>
-					</plugin>
-					<plugin>
-						<groupId>org.apache.maven.plugins</groupId>
-						<artifactId>maven-scm-publish-plugin</artifactId>
-						<version>1.1</version>
-						<configuration>
-							<checkoutDirectory>${project.build.directory}/scmpublish</checkoutDirectory>
-							<checkinComment>Publishing javadoc for ${project.artifactId}:${project.version}</checkinComment>
-							<content>${project.build.directory}/site/apidocs</content>
-							<skipDeletedFiles>true</skipDeletedFiles>
-							<pubScmUrl>scm:git:https://github.com/01org/jndn-utils.git</pubScmUrl>
-							<scmBranch>gh-pages</scmBranch>
-						</configuration>
-					</plugin>
-				</plugins>
-			</build>
-		</profile>
-	</profiles>
+  <developers>
+    <developer>
+      <name>Andrew Brown</name>
+      <url>http://github.com/andrewsbrown</url>
+    </developer>
+  </developers>
+
+  <distributionManagement>
+    <snapshotRepository>
+      <id>ossrh</id>
+      <url>https://oss.sonatype.org/content/repositories/snapshots</url>
+    </snapshotRepository>
+  </distributionManagement>
+
+  <scm>
+    <url>https://github.com/01org/jndn-utils</url>
+    <connection>scm:git:git@github.com:01org/jndn-utils.git</connection>
+    <developerConnection>scm:git:git@github.com:01org/jndn-utils.git</developerConnection>
+  </scm>
+
+  <dependencies>
+    <dependency>
+      <groupId>net.named-data</groupId>
+      <artifactId>jndn</artifactId>
+      <version>0.13</version>
+    </dependency>
+    <!-- Test dependencies -->
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>4.10</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>com.intel.jndn.mock</groupId>
+      <artifactId>jndn-mock</artifactId>
+      <version>1.0.2</version>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+    <maven.compiler.source>1.8</maven.compiler.source>
+    <maven.compiler.target>1.8</maven.compiler.target>
+  </properties>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.jacoco</groupId>
+        <artifactId>jacoco-maven-plugin</artifactId>
+        <version>0.7.4.201502262128</version>
+        <executions>
+          <execution>
+            <id>pre-unit-test</id>
+            <goals>
+              <goal>prepare-agent</goal>
+            </goals>
+          </execution>
+          <execution>
+            <id>post-unit-test</id>
+            <phase>test</phase>
+            <goals>
+              <goal>report</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+    </plugins>
+  </build>
+
+  <profiles>
+    <!-- Use OSSRH-directed plugins (see http://central.sonatype.org/pages/apache-maven.html)
+    for deployment to Maven central; e.g. `mvn deploy -P ossrh`-->
+    <profile>
+      <id>ossrh</id>
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-source-plugin</artifactId>
+            <version>2.4</version>
+            <executions>
+              <execution>
+                <id>attach-sources</id>
+                <goals>
+                  <goal>jar-no-fork</goal>
+                </goals>
+              </execution>
+            </executions>
+          </plugin>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-javadoc-plugin</artifactId>
+            <version>2.10.2</version>
+            <configuration>
+              <additionalparam>-Xdoclint:none</additionalparam>
+            </configuration>
+            <executions>
+              <execution>
+                <id>attach-javadocs</id>
+                <goals>
+                  <goal>jar</goal>
+                </goals>
+              </execution>
+            </executions>
+          </plugin>
+          <plugin>
+            <groupId>org.sonatype.plugins</groupId>
+            <artifactId>nexus-staging-maven-plugin</artifactId>
+            <version>1.6.3</version>
+            <extensions>true</extensions>
+            <configuration>
+              <serverId>ossrh</serverId>
+              <stagingProfileId>a80137db01223a</stagingProfileId>
+              <nexusUrl>https://oss.sonatype.org/</nexusUrl>
+              <autoReleaseAfterClose>true</autoReleaseAfterClose>
+            </configuration>
+          </plugin>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-gpg-plugin</artifactId>
+            <version>1.5</version>
+            <executions>
+              <execution>
+                <id>sign-artifacts</id>
+                <phase>verify</phase>
+                <goals>
+                  <goal>sign</goal>
+                </goals>
+              </execution>
+            </executions>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+
+    <!-- Use failsafe to run integration tests with an NFD instance; e.g.
+    `mvn verify -Pnfd-integration-tests -Dnfd.ip=10.0.0.1; these are not run by default
+    due to the external NFD dependency -->
+    <profile>
+      <id>nfd-integration-tests</id>
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-failsafe-plugin</artifactId>
+            <version>2.18.1</version>
+            <executions>
+              <execution>
+                <id>runIntegrationTests</id>
+                <phase>integration-test</phase>
+                <goals>
+                  <goal>integration-test</goal>
+                </goals>
+              </execution>
+              <execution>
+                <id>verifyIntegrationTests</id>
+                <phase>verify</phase>
+                <goals>
+                  <goal>verify</goal>
+                </goals>
+              </execution>
+            </executions>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+
+    <!-- Run `mvn clean javadoc:javadoc scm-publish:publish-scm -P docs` to push
+    Javadoc to Github -->
+    <profile>
+      <id>docs</id>
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-javadoc-plugin</artifactId>
+            <version>2.10.2</version>
+            <configuration>
+              <additionalparam>-Xdoclint:none</additionalparam>
+            </configuration>
+          </plugin>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-scm-publish-plugin</artifactId>
+            <version>1.1</version>
+            <configuration>
+              <checkoutDirectory>${project.build.directory}/scmpublish</checkoutDirectory>
+              <checkinComment>Publishing javadoc for ${project.artifactId}:${project.version}</checkinComment>
+              <content>${project.build.directory}/site/apidocs</content>
+              <skipDeletedFiles>true</skipDeletedFiles>
+              <pubScmUrl>scm:git:https://github.com/01org/jndn-utils.git</pubScmUrl>
+              <scmBranch>gh-pages</scmBranch>
+            </configuration>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+  </profiles>
 </project>
