diff --git a/briar-core/src/net/sf/briar/messaging/duplex/DuplexConnection.java b/briar-core/src/net/sf/briar/messaging/duplex/DuplexConnection.java
index 6846a27c4bb92211c5496c4d11a12d75dedfa477..0fb3760d5dab6b100df4a74cce3e0312609c2e40 100644
--- a/briar-core/src/net/sf/briar/messaging/duplex/DuplexConnection.java
+++ b/briar-core/src/net/sf/briar/messaging/duplex/DuplexConnection.java
@@ -78,8 +78,8 @@ abstract class DuplexConnection implements DatabaseListener {
 	protected final ConnectionRegistry connRegistry;
 	protected final ConnectionReaderFactory connReaderFactory;
 	protected final ConnectionWriterFactory connWriterFactory;
-	protected final PacketReaderFactory protoReaderFactory;
-	protected final PacketWriterFactory protoWriterFactory;
+	protected final PacketReaderFactory packetReaderFactory;
+	protected final PacketWriterFactory packetWriterFactory;
 	protected final ConnectionContext ctx;
 	protected final DuplexTransportConnection transport;
 	protected final ContactId contactId;
@@ -100,8 +100,8 @@ abstract class DuplexConnection implements DatabaseListener {
 			ConnectionRegistry connRegistry,
 			ConnectionReaderFactory connReaderFactory,
 			ConnectionWriterFactory connWriterFactory,
-			PacketReaderFactory protoReaderFactory,
-			PacketWriterFactory protoWriterFactory, ConnectionContext ctx,
+			PacketReaderFactory packetReaderFactory,
+			PacketWriterFactory packetWriterFactory, ConnectionContext ctx,
 			DuplexTransportConnection transport) {
 		this.dbExecutor = dbExecutor;
 		this.verificationExecutor = verificationExecutor;
@@ -110,8 +110,8 @@ abstract class DuplexConnection implements DatabaseListener {
 		this.connRegistry = connRegistry;
 		this.connReaderFactory = connReaderFactory;
 		this.connWriterFactory = connWriterFactory;
-		this.protoReaderFactory = protoReaderFactory;
-		this.protoWriterFactory = protoWriterFactory;
+		this.packetReaderFactory = packetReaderFactory;
+		this.packetWriterFactory = packetWriterFactory;
 		this.ctx = ctx;
 		this.transport = transport;
 		contactId = ctx.getContactId();
@@ -161,7 +161,7 @@ abstract class DuplexConnection implements DatabaseListener {
 	void read() {
 		try {
 			InputStream in = createConnectionReader().getInputStream();
-			PacketReader reader = protoReaderFactory.createPacketReader(in);
+			PacketReader reader = packetReaderFactory.createPacketReader(in);
 			while(!reader.eof()) {
 				if(reader.hasAck()) {
 					Ack a = reader.readAck();
@@ -226,7 +226,7 @@ abstract class DuplexConnection implements DatabaseListener {
 		db.addListener(this);
 		try {
 			OutputStream out = createConnectionWriter().getOutputStream();
-			writer = protoWriterFactory.createPacketWriter(out,
+			writer = packetWriterFactory.createPacketWriter(out,
 					transport.shouldFlush());
 			// Send the initial packets: updates, acks, offer
 			dbExecutor.execute(new GenerateTransportAcks());
diff --git a/briar-core/src/net/sf/briar/messaging/duplex/DuplexConnectionFactoryImpl.java b/briar-core/src/net/sf/briar/messaging/duplex/DuplexConnectionFactoryImpl.java
index 5230475c9d019cbaaf5a3c55e4aa778feb330739..b23476890a2f2b725092de44e766d776c738630a 100644
--- a/briar-core/src/net/sf/briar/messaging/duplex/DuplexConnectionFactoryImpl.java
+++ b/briar-core/src/net/sf/briar/messaging/duplex/DuplexConnectionFactoryImpl.java
@@ -35,8 +35,8 @@ class DuplexConnectionFactoryImpl implements DuplexConnectionFactory {
 	private final ConnectionRegistry connRegistry;
 	private final ConnectionReaderFactory connReaderFactory;
 	private final ConnectionWriterFactory connWriterFactory;
-	private final PacketReaderFactory protoReaderFactory;
-	private final PacketWriterFactory protoWriterFactory;
+	private final PacketReaderFactory packetReaderFactory;
+	private final PacketWriterFactory packetWriterFactory;
 
 	@Inject
 	DuplexConnectionFactoryImpl(@DatabaseExecutor Executor dbExecutor,
@@ -45,7 +45,8 @@ class DuplexConnectionFactoryImpl implements DuplexConnectionFactory {
 			KeyManager keyManager, ConnectionRegistry connRegistry,
 			ConnectionReaderFactory connReaderFactory,
 			ConnectionWriterFactory connWriterFactory,
-			PacketReaderFactory protoReaderFactory, PacketWriterFactory protoWriterFactory) {
+			PacketReaderFactory packetReaderFactory,
+			PacketWriterFactory packetWriterFactory) {
 		this.dbExecutor = dbExecutor;
 		this.verificationExecutor = verificationExecutor;
 		this.messageVerifier = messageVerifier;
@@ -54,16 +55,16 @@ class DuplexConnectionFactoryImpl implements DuplexConnectionFactory {
 		this.connRegistry = connRegistry;
 		this.connReaderFactory = connReaderFactory;
 		this.connWriterFactory = connWriterFactory;
-		this.protoReaderFactory = protoReaderFactory;
-		this.protoWriterFactory = protoWriterFactory;
+		this.packetReaderFactory = packetReaderFactory;
+		this.packetWriterFactory = packetWriterFactory;
 	}
 
 	public void createIncomingConnection(ConnectionContext ctx,
 			DuplexTransportConnection transport) {
 		final DuplexConnection conn = new IncomingDuplexConnection(dbExecutor,
 				verificationExecutor, messageVerifier, db, connRegistry,
-				connReaderFactory, connWriterFactory, protoReaderFactory,
-				protoWriterFactory, ctx, transport);
+				connReaderFactory, connWriterFactory, packetReaderFactory,
+				packetWriterFactory, ctx, transport);
 		Runnable write = new Runnable() {
 			public void run() {
 				conn.write();
@@ -88,8 +89,8 @@ class DuplexConnectionFactoryImpl implements DuplexConnectionFactory {
 		}
 		final DuplexConnection conn = new OutgoingDuplexConnection(dbExecutor,
 				verificationExecutor, messageVerifier, db, connRegistry,
-				connReaderFactory, connWriterFactory, protoReaderFactory,
-				protoWriterFactory, ctx, transport);
+				connReaderFactory, connWriterFactory, packetReaderFactory,
+				packetWriterFactory, ctx, transport);
 		Runnable write = new Runnable() {
 			public void run() {
 				conn.write();
diff --git a/briar-core/src/net/sf/briar/messaging/duplex/IncomingDuplexConnection.java b/briar-core/src/net/sf/briar/messaging/duplex/IncomingDuplexConnection.java
index f9aba80b8a35c0d8400594e90bfcec2a5c04f859..64314943b395e0b1ba21d64b9f82c3d26874b2e4 100644
--- a/briar-core/src/net/sf/briar/messaging/duplex/IncomingDuplexConnection.java
+++ b/briar-core/src/net/sf/briar/messaging/duplex/IncomingDuplexConnection.java
@@ -25,12 +25,12 @@ class IncomingDuplexConnection extends DuplexConnection {
 			ConnectionRegistry connRegistry,
 			ConnectionReaderFactory connReaderFactory,
 			ConnectionWriterFactory connWriterFactory,
-			PacketReaderFactory protoReaderFactory,
-			PacketWriterFactory protoWriterFactory,
+			PacketReaderFactory packetReaderFactory,
+			PacketWriterFactory packetWriterFactory,
 			ConnectionContext ctx, DuplexTransportConnection transport) {
 		super(dbExecutor, verificationExecutor, messageVerifier, db,
 				connRegistry, connReaderFactory, connWriterFactory,
-				protoReaderFactory, protoWriterFactory, ctx, transport);
+				packetReaderFactory, packetWriterFactory, ctx, transport);
 	}
 
 	@Override
diff --git a/briar-core/src/net/sf/briar/messaging/duplex/OutgoingDuplexConnection.java b/briar-core/src/net/sf/briar/messaging/duplex/OutgoingDuplexConnection.java
index 06418f78b9d49cc85de62819fcdb1332cc8a2b91..dd24410e6f55d0b5c028c7b2e3d2befa25a57772 100644
--- a/briar-core/src/net/sf/briar/messaging/duplex/OutgoingDuplexConnection.java
+++ b/briar-core/src/net/sf/briar/messaging/duplex/OutgoingDuplexConnection.java
@@ -25,12 +25,12 @@ class OutgoingDuplexConnection extends DuplexConnection {
 			ConnectionRegistry connRegistry,
 			ConnectionReaderFactory connReaderFactory,
 			ConnectionWriterFactory connWriterFactory,
-			PacketReaderFactory protoReaderFactory,
-			PacketWriterFactory protoWriterFactory, ConnectionContext ctx,
+			PacketReaderFactory packetReaderFactory,
+			PacketWriterFactory packetWriterFactory, ConnectionContext ctx,
 			DuplexTransportConnection transport) {
 		super(dbExecutor, verificationExecutor, messageVerifier, db,
 				connRegistry, connReaderFactory, connWriterFactory,
-				protoReaderFactory, protoWriterFactory, ctx, transport);
+				packetReaderFactory, packetWriterFactory, ctx, transport);
 	}
 
 	@Override
diff --git a/briar-core/src/net/sf/briar/messaging/simplex/IncomingSimplexConnection.java b/briar-core/src/net/sf/briar/messaging/simplex/IncomingSimplexConnection.java
index 9d48be59587b5d18ee75cc2435c57634206f17cf..9339616c36dd0c0738e67e6d487c9f6e71ea5a6c 100644
--- a/briar-core/src/net/sf/briar/messaging/simplex/IncomingSimplexConnection.java
+++ b/briar-core/src/net/sf/briar/messaging/simplex/IncomingSimplexConnection.java
@@ -43,8 +43,8 @@ class IncomingSimplexConnection {
 	private final MessageVerifier messageVerifier;
 	private final DatabaseComponent db;
 	private final ConnectionRegistry connRegistry;
-	private final ConnectionReaderFactory connFactory;
-	private final PacketReaderFactory protoFactory;
+	private final ConnectionReaderFactory connReaderFactory;
+	private final PacketReaderFactory packetReaderFactory;
 	private final ConnectionContext ctx;
 	private final SimplexTransportReader transport;
 	private final ContactId contactId;
@@ -54,16 +54,16 @@ class IncomingSimplexConnection {
 			@VerificationExecutor Executor verificationExecutor,
 			MessageVerifier messageVerifier, DatabaseComponent db,
 			ConnectionRegistry connRegistry,
-			ConnectionReaderFactory connFactory,
-			PacketReaderFactory protoFactory, ConnectionContext ctx,
+			ConnectionReaderFactory connReaderFactory,
+			PacketReaderFactory packetReaderFactory, ConnectionContext ctx,
 			SimplexTransportReader transport) {
 		this.dbExecutor = dbExecutor;
 		this.verificationExecutor = verificationExecutor;
 		this.messageVerifier = messageVerifier;
 		this.db = db;
 		this.connRegistry = connRegistry;
-		this.connFactory = connFactory;
-		this.protoFactory = protoFactory;
+		this.connReaderFactory = connReaderFactory;
+		this.packetReaderFactory = packetReaderFactory;
 		this.ctx = ctx;
 		this.transport = transport;
 		contactId = ctx.getContactId();
@@ -73,10 +73,10 @@ class IncomingSimplexConnection {
 	void read() {
 		connRegistry.registerConnection(contactId, transportId);
 		try {
-			ConnectionReader conn = connFactory.createConnectionReader(
+			ConnectionReader conn = connReaderFactory.createConnectionReader(
 					transport.getInputStream(), ctx, true, true);
 			InputStream in = conn.getInputStream();
-			PacketReader reader = protoFactory.createPacketReader(in);
+			PacketReader reader = packetReaderFactory.createPacketReader(in);
 			// Read packets until EOF
 			while(!reader.eof()) {
 				if(reader.hasAck()) {
diff --git a/briar-core/src/net/sf/briar/messaging/simplex/OutgoingSimplexConnection.java b/briar-core/src/net/sf/briar/messaging/simplex/OutgoingSimplexConnection.java
index 4a310a2fe51dbaa43e06868a757938455f2a5834..4a643a123727bcb3d91dc156eed87e6772c0653f 100644
--- a/briar-core/src/net/sf/briar/messaging/simplex/OutgoingSimplexConnection.java
+++ b/briar-core/src/net/sf/briar/messaging/simplex/OutgoingSimplexConnection.java
@@ -36,8 +36,8 @@ class OutgoingSimplexConnection {
 
 	private final DatabaseComponent db;
 	private final ConnectionRegistry connRegistry;
-	private final ConnectionWriterFactory connFactory;
-	private final PacketWriterFactory protoFactory;
+	private final ConnectionWriterFactory connWriterFactory;
+	private final PacketWriterFactory packetWriterFactory;
 	private final ConnectionContext ctx;
 	private final SimplexTransportWriter transport;
 	private final ContactId contactId;
@@ -45,13 +45,13 @@ class OutgoingSimplexConnection {
 
 	OutgoingSimplexConnection(DatabaseComponent db,
 			ConnectionRegistry connRegistry,
-			ConnectionWriterFactory connFactory,
-			PacketWriterFactory protoFactory, ConnectionContext ctx,
+			ConnectionWriterFactory connWriterFactory,
+			PacketWriterFactory packetWriterFactory, ConnectionContext ctx,
 			SimplexTransportWriter transport) {
 		this.db = db;
 		this.connRegistry = connRegistry;
-		this.connFactory = connFactory;
-		this.protoFactory = protoFactory;
+		this.connWriterFactory = connWriterFactory;
+		this.packetWriterFactory = packetWriterFactory;
 		this.ctx = ctx;
 		this.transport = transport;
 		contactId = ctx.getContactId();
@@ -61,13 +61,13 @@ class OutgoingSimplexConnection {
 	void write() {
 		connRegistry.registerConnection(contactId, transportId);
 		try {
-			ConnectionWriter conn = connFactory.createConnectionWriter(
-					transport.getOutputStream(), transport.getCapacity(),
-					ctx, false, true);
+			ConnectionWriter conn = connWriterFactory.createConnectionWriter(
+					transport.getOutputStream(), transport.getCapacity(), ctx,
+					false, true);
 			OutputStream out = conn.getOutputStream();
 			if(conn.getRemainingCapacity() < MAX_PACKET_LENGTH)
 				throw new EOFException();
-			PacketWriter writer = protoFactory.createPacketWriter(out,
+			PacketWriter writer = packetWriterFactory.createPacketWriter(out,
 					transport.shouldFlush());
 			// Send the initial packets: updates and acks
 			boolean hasSpace = writeTransportAcks(conn, writer);
diff --git a/briar-core/src/net/sf/briar/messaging/simplex/SimplexConnectionFactoryImpl.java b/briar-core/src/net/sf/briar/messaging/simplex/SimplexConnectionFactoryImpl.java
index c06f35e586040b61405ff080d97a0b5767e68846..7a3f1c33722cf150680618279f450234dbd299c6 100644
--- a/briar-core/src/net/sf/briar/messaging/simplex/SimplexConnectionFactoryImpl.java
+++ b/briar-core/src/net/sf/briar/messaging/simplex/SimplexConnectionFactoryImpl.java
@@ -36,8 +36,8 @@ class SimplexConnectionFactoryImpl implements SimplexConnectionFactory {
 	private final ConnectionRegistry connRegistry;
 	private final ConnectionReaderFactory connReaderFactory;
 	private final ConnectionWriterFactory connWriterFactory;
-	private final PacketReaderFactory protoReaderFactory;
-	private final PacketWriterFactory protoWriterFactory;
+	private final PacketReaderFactory packetReaderFactory;
+	private final PacketWriterFactory packetWriterFactory;
 
 	@Inject
 	SimplexConnectionFactoryImpl(@DatabaseExecutor Executor dbExecutor,
@@ -46,8 +46,8 @@ class SimplexConnectionFactoryImpl implements SimplexConnectionFactory {
 			KeyManager keyManager, ConnectionRegistry connRegistry,
 			ConnectionReaderFactory connReaderFactory,
 			ConnectionWriterFactory connWriterFactory,
-			PacketReaderFactory protoReaderFactory,
-			PacketWriterFactory protoWriterFactory) {
+			PacketReaderFactory packetReaderFactory,
+			PacketWriterFactory packetWriterFactory) {
 		this.dbExecutor = dbExecutor;
 		this.verificationExecutor = verificationExecutor;
 		this.messageVerifier = messageVerifier;
@@ -56,14 +56,14 @@ class SimplexConnectionFactoryImpl implements SimplexConnectionFactory {
 		this.connRegistry = connRegistry;
 		this.connReaderFactory = connReaderFactory;
 		this.connWriterFactory = connWriterFactory;
-		this.protoReaderFactory = protoReaderFactory;
-		this.protoWriterFactory = protoWriterFactory;
+		this.packetReaderFactory = packetReaderFactory;
+		this.packetWriterFactory = packetWriterFactory;
 	}
 
 	public void createIncomingConnection(ConnectionContext ctx, SimplexTransportReader r) {
 		final IncomingSimplexConnection conn = new IncomingSimplexConnection(
 				dbExecutor, verificationExecutor, messageVerifier, db,
-				connRegistry, connReaderFactory, protoReaderFactory, ctx, r);
+				connRegistry, connReaderFactory, packetReaderFactory, ctx, r);
 		Runnable read = new Runnable() {
 			public void run() {
 				conn.read();
@@ -81,7 +81,7 @@ class SimplexConnectionFactoryImpl implements SimplexConnectionFactory {
 			return;
 		}		
 		final OutgoingSimplexConnection conn = new OutgoingSimplexConnection(db,
-				connRegistry, connWriterFactory, protoWriterFactory, ctx, w);
+				connRegistry, connWriterFactory, packetWriterFactory, ctx, w);
 		Runnable write = new Runnable() {
 			public void run() {
 				conn.write();
diff --git a/briar-tests/src/net/sf/briar/messaging/simplex/OutgoingSimplexConnectionTest.java b/briar-tests/src/net/sf/briar/messaging/simplex/OutgoingSimplexConnectionTest.java
index 9be90a38d541bfc49a562397176b71a82f6d26c5..746cbfb153b23cc120edd8d265649d3c53edcbaf 100644
--- a/briar-tests/src/net/sf/briar/messaging/simplex/OutgoingSimplexConnectionTest.java
+++ b/briar-tests/src/net/sf/briar/messaging/simplex/OutgoingSimplexConnectionTest.java
@@ -50,8 +50,8 @@ public class OutgoingSimplexConnectionTest extends BriarTestCase {
 	private final Mockery context;
 	private final DatabaseComponent db;
 	private final ConnectionRegistry connRegistry;
-	private final ConnectionWriterFactory connFactory;
-	private final PacketWriterFactory protoFactory;
+	private final ConnectionWriterFactory connWriterFactory;
+	private final PacketWriterFactory packetWriterFactory;
 	private final ContactId contactId;
 	private final MessageId messageId;
 	private final TransportId transportId;
@@ -75,8 +75,8 @@ public class OutgoingSimplexConnectionTest extends BriarTestCase {
 				new SimplexMessagingModule(), new MessagingModule(),
 				new DuplexMessagingModule());
 		connRegistry = i.getInstance(ConnectionRegistry.class);
-		connFactory = i.getInstance(ConnectionWriterFactory.class);
-		protoFactory = i.getInstance(PacketWriterFactory.class);
+		connWriterFactory = i.getInstance(ConnectionWriterFactory.class);
+		packetWriterFactory = i.getInstance(PacketWriterFactory.class);
 		contactId = new ContactId(234);
 		messageId = new MessageId(TestUtils.getRandomId());
 		transportId = new TransportId(TestUtils.getRandomId());
@@ -91,7 +91,8 @@ public class OutgoingSimplexConnectionTest extends BriarTestCase {
 		ConnectionContext ctx = new ConnectionContext(contactId, transportId,
 				secret, 0L, true);
 		OutgoingSimplexConnection connection = new OutgoingSimplexConnection(db,
-				connRegistry, connFactory, protoFactory, ctx, transport);
+				connRegistry, connWriterFactory, packetWriterFactory, ctx,
+				transport);
 		connection.write();
 		// Nothing should have been written
 		assertEquals(0, out.size());
@@ -108,7 +109,8 @@ public class OutgoingSimplexConnectionTest extends BriarTestCase {
 		ConnectionContext ctx = new ConnectionContext(contactId, transportId,
 				secret, 0L, true);
 		OutgoingSimplexConnection connection = new OutgoingSimplexConnection(db,
-				connRegistry, connFactory, protoFactory, ctx, transport);
+				connRegistry, connWriterFactory, packetWriterFactory, ctx,
+				transport);
 		context.checking(new Expectations() {{
 			// No transport acks to send
 			oneOf(db).generateTransportAcks(contactId);
@@ -152,7 +154,8 @@ public class OutgoingSimplexConnectionTest extends BriarTestCase {
 		ConnectionContext ctx = new ConnectionContext(contactId, transportId,
 				secret, 0L, true);
 		OutgoingSimplexConnection connection = new OutgoingSimplexConnection(db,
-				connRegistry, connFactory, protoFactory, ctx, transport);
+				connRegistry, connWriterFactory, packetWriterFactory, ctx,
+				transport);
 		final byte[] raw = new byte[1234];
 		context.checking(new Expectations() {{
 			// No transport acks to send
diff --git a/briar-tests/src/net/sf/briar/messaging/simplex/SimplexMessagingIntegrationTest.java b/briar-tests/src/net/sf/briar/messaging/simplex/SimplexMessagingIntegrationTest.java
index 4de0d71dce4e7d666478fb96719f9cb9573c86bf..81322d93d258861f3d0d6eb55043490f5633cb61 100644
--- a/briar-tests/src/net/sf/briar/messaging/simplex/SimplexMessagingIntegrationTest.java
+++ b/briar-tests/src/net/sf/briar/messaging/simplex/SimplexMessagingIntegrationTest.java
@@ -121,16 +121,17 @@ public class SimplexMessagingIntegrationTest extends BriarTestCase {
 		ByteArrayOutputStream out = new ByteArrayOutputStream();
 		ConnectionRegistry connRegistry =
 				alice.getInstance(ConnectionRegistry.class);
-		ConnectionWriterFactory connFactory =
+		ConnectionWriterFactory connWriterFactory =
 				alice.getInstance(ConnectionWriterFactory.class);
-		PacketWriterFactory protoFactory =
+		PacketWriterFactory packetWriterFactory =
 				alice.getInstance(PacketWriterFactory.class);
 		TestSimplexTransportWriter transport = new TestSimplexTransportWriter(
 				out, Long.MAX_VALUE, false);
 		ConnectionContext ctx = km.getConnectionContext(contactId, transportId);
 		assertNotNull(ctx);
 		OutgoingSimplexConnection simplex = new OutgoingSimplexConnection(db,
-				connRegistry, connFactory, protoFactory, ctx, transport);
+				connRegistry, connWriterFactory, packetWriterFactory, ctx,
+				transport);
 		// Write whatever needs to be written
 		simplex.write();
 		assertTrue(transport.getDisposed());
@@ -173,16 +174,16 @@ public class SimplexMessagingIntegrationTest extends BriarTestCase {
 				bob.getInstance(MessageVerifier.class);
 		ConnectionRegistry connRegistry =
 				bob.getInstance(ConnectionRegistry.class);
-		ConnectionReaderFactory connFactory =
+		ConnectionReaderFactory connWriterFactory =
 				bob.getInstance(ConnectionReaderFactory.class);
-		PacketReaderFactory protoFactory =
+		PacketReaderFactory packetWriterFactory =
 				bob.getInstance(PacketReaderFactory.class);
 		TestSimplexTransportReader transport =
 				new TestSimplexTransportReader(in);
 		IncomingSimplexConnection simplex = new IncomingSimplexConnection(
 				new ImmediateExecutor(), new ImmediateExecutor(),
-				messageVerifier, db, connRegistry, connFactory, protoFactory,
-				ctx, transport);
+				messageVerifier, db, connRegistry, connWriterFactory,
+				packetWriterFactory, ctx, transport);
 		// No messages should have been added yet
 		assertFalse(listener.messagesAdded);
 		// Read whatever needs to be read