From f4f7b96d50b8c94b629bd02348c949ea440bfbda Mon Sep 17 00:00:00 2001
From: akwizgran <michael@briarproject.org>
Date: Wed, 5 Dec 2012 20:39:31 +0000
Subject: [PATCH] Separated Android code and core code into distinct Eclipse
 projects.

This should make it possible to develop the core in Eclipse without the ADT.
---
 .settings/org.eclipse.jdt.core.prefs          |  12 ---------
 .classpath => briar-android/.classpath        |   1 +
 .project => briar-android/.project            |   2 +-
 .../AndroidManifest.xml                       |   0
 .../ant.properties                            |   0
 build.xml => briar-android/build.xml          |   0
 .../libs}/roboguice-2.0.jar                   | Bin
 lint.xml => briar-android/lint.xml            |   0
 .../proguard-project.txt                      |   0
 .../project.properties                        |   0
 .../res}/drawable-hdpi/action_settings.png    | Bin
 .../drawable-hdpi/alerts_and_states_error.png | Bin
 .../alerts_and_states_warning.png             | Bin
 .../res}/drawable-hdpi/ic_launcher.png        | Bin
 .../res}/drawable-hdpi/navigation_accept.png  | Bin
 .../res}/drawable-hdpi/social_add_person.png  | Bin
 .../res}/drawable-ldpi/ic_launcher.png        | Bin
 .../res}/drawable-mdpi/action_settings.png    | Bin
 .../drawable-mdpi/alerts_and_states_error.png | Bin
 .../alerts_and_states_warning.png             | Bin
 .../res}/drawable-mdpi/ic_launcher.png        | Bin
 .../res}/drawable-mdpi/navigation_accept.png  | Bin
 .../res}/drawable-mdpi/social_add_person.png  | Bin
 .../res}/drawable-xhdpi/action_settings.png   | Bin
 .../alerts_and_states_error.png               | Bin
 .../alerts_and_states_warning.png             | Bin
 .../res}/drawable-xhdpi/ic_launcher.png       | Bin
 .../res}/drawable-xhdpi/navigation_accept.png | Bin
 .../res}/drawable-xhdpi/social_add_person.png | Bin
 .../res}/values-v11/styles.xml                |   0
 .../res}/values/roboguice.xml                 |   0
 {res => briar-android/res}/values/strings.xml |   0
 {res => briar-android/res}/values/styles.xml  |   0
 .../sf/briar/android/AndroidExecutorImpl.java |   0
 .../net/sf/briar/android/AndroidModule.java   |   0
 .../helloworld/HelloWorldActivity.java        |   0
 .../android/helloworld/HelloWorldModule.java  |   0
 .../android/helloworld/HelloWorldService.java |   0
 .../invitation/AddContactActivity.java        |   0
 .../android/invitation/AddContactView.java    |   0
 .../invitation/BluetoothStateListener.java    |   0
 .../android/invitation/BluetoothWidget.java   |   0
 .../android/invitation/CodeEntryListener.java |   0
 .../android/invitation/CodeEntryWidget.java   |   0
 .../invitation/CodesDoNotMatchView.java       |   0
 .../invitation/ConfirmationCodeView.java      |   0
 .../invitation/ConnectionFailedView.java      |   0
 .../android/invitation/ConnectionView.java    |   0
 .../android/invitation/ContactAddedView.java  |   0
 .../invitation/InvitationCodeView.java        |   0
 .../android/invitation/NetworkSetupView.java  |   0
 .../invitation/WaitForContactView.java        |   0
 .../android/invitation/WifiStateListener.java |   0
 .../briar/android/invitation/WifiWidget.java  |   0
 briar-core/.classpath                         |  23 ++++++++++++++++++
 briar-core/.project                           |  17 +++++++++++++
 android.jar => briar-core/android.jar         | Bin
 {libs => briar-core/libs}/activation.jar      | Bin
 .../libs}/bluecove-2.1.0-briar.jar            | Bin
 .../libs}/bluecove-gpl-2.1.0.jar              | Bin
 .../libs}/commons-io-2.0.1.jar                | Bin
 .../libs}/guice-3.0-no_aop.jar                | Bin
 {libs => briar-core/libs}/h2small-1.3.161.jar | Bin
 {libs => briar-core/libs}/javax.inject.jar    | Bin
 {libs => briar-core/libs}/jna-3.5.1.jar       | Bin
 {libs => briar-core/libs}/jnotify-0.93.jar    | Bin
 {libs => briar-core/libs}/jssc-0.9-briar.jar  | Bin
 {libs => briar-core/libs}/libjnotify.dylib    | Bin
 {libs => briar-core/libs}/libjnotify.so       | Bin
 {libs => briar-core/libs}/platform-3.5.1.jar  | Bin
 .../sc-light-jdk15on-1.47.0.3-SNAPSHOT.jar    | Bin
 .../scpkix-jdk15on-1.47.0.3-SNAPSHOT.jar      | Bin
 .../scprov-jdk15on-1.47.0.3-SNAPSHOT.jar      | Bin
 .../silvertunnel.org-netlib-0.14-briar.jar    | Bin
 {libs => briar-core/libs}/weupnp-0.1.1.jar    | Bin
 {src => briar-core/src}/build.xml             |   6 +----
 .../src}/net/sf/briar/api/Bytes.java          |   0
 .../src}/net/sf/briar/api/ContactId.java      |   0
 .../net/sf/briar/api/FormatException.java     |   0
 .../src}/net/sf/briar/api/Rating.java         |   0
 .../net/sf/briar/api/TransportConfig.java     |   0
 .../net/sf/briar/api/TransportProperties.java |   0
 .../sf/briar/api/android/AndroidExecutor.java |   0
 .../src}/net/sf/briar/api/clock/Clock.java    |   0
 .../net/sf/briar/api/clock/SystemClock.java   |   0
 .../net/sf/briar/api/clock/SystemTimer.java   |   0
 .../src}/net/sf/briar/api/clock/Timer.java    |   0
 .../briar/api/crypto/AuthenticatedCipher.java |   0
 .../sf/briar/api/crypto/CryptoComponent.java  |   0
 .../net/sf/briar/api/crypto/ErasableKey.java  |   0
 .../net/sf/briar/api/crypto/KeyManager.java   |   0
 .../net/sf/briar/api/crypto/KeyParser.java    |   0
 .../sf/briar/api/crypto/MessageDigest.java    |   0
 .../net/sf/briar/api/crypto/Password.java     |   0
 .../net/sf/briar/api/crypto/PseudoRandom.java |   0
 .../sf/briar/api/db/DatabaseComponent.java    |   0
 .../net/sf/briar/api/db/DatabaseConfig.java   |   0
 .../net/sf/briar/api/db/DatabaseExecutor.java |   0
 .../sf/briar/api/db/DbClosedException.java    |   0
 .../src}/net/sf/briar/api/db/DbException.java |   0
 .../net/sf/briar/api/db/MessageHeader.java    |   0
 .../briar/api/db/NoSuchContactException.java  |   0
 .../db/NoSuchContactTransportException.java   |   0
 .../api/db/event/BatchReceivedEvent.java      |   0
 .../briar/api/db/event/ContactAddedEvent.java |   0
 .../api/db/event/ContactRemovedEvent.java     |   0
 .../sf/briar/api/db/event/DatabaseEvent.java  |   0
 .../briar/api/db/event/DatabaseListener.java  |   0
 .../db/event/LocalTransportsUpdatedEvent.java |   0
 .../api/db/event/MessagesAddedEvent.java      |   0
 .../api/db/event/RatingChangedEvent.java      |   0
 .../event/RemoteTransportsUpdatedEvent.java   |   0
 .../db/event/SubscriptionsUpdatedEvent.java   |   0
 .../api/invitation/InvitationListener.java    |   0
 .../api/invitation/InvitationManager.java     |   0
 .../briar/api/invitation/InvitationState.java |   0
 .../briar/api/invitation/InvitationTask.java  |   0
 .../briar/api/lifecycle/ShutdownManager.java  |   0
 .../api/plugins/InvitationConstants.java      |   0
 .../src}/net/sf/briar/api/plugins/Plugin.java |   0
 .../sf/briar/api/plugins/PluginCallback.java  |   0
 .../sf/briar/api/plugins/PluginExecutor.java  |   0
 .../sf/briar/api/plugins/PluginManager.java   |   0
 .../api/plugins/duplex/DuplexPlugin.java      |   0
 .../plugins/duplex/DuplexPluginCallback.java  |   0
 .../plugins/duplex/DuplexPluginFactory.java   |   0
 .../duplex/DuplexTransportConnection.java     |   0
 .../api/plugins/simplex/SimplexPlugin.java    |   0
 .../simplex/SimplexPluginCallback.java        |   0
 .../plugins/simplex/SimplexPluginFactory.java |   0
 .../simplex/SimplexTransportReader.java       |   0
 .../simplex/SimplexTransportWriter.java       |   0
 .../src}/net/sf/briar/api/protocol/Ack.java   |   0
 .../net/sf/briar/api/protocol/Author.java     |   0
 .../sf/briar/api/protocol/AuthorFactory.java  |   0
 .../net/sf/briar/api/protocol/AuthorId.java   |   0
 .../src}/net/sf/briar/api/protocol/Batch.java |   0
 .../net/sf/briar/api/protocol/BatchId.java    |   0
 .../src}/net/sf/briar/api/protocol/Group.java |   0
 .../sf/briar/api/protocol/GroupFactory.java   |   0
 .../net/sf/briar/api/protocol/GroupId.java    |   0
 .../net/sf/briar/api/protocol/Message.java    |   0
 .../sf/briar/api/protocol/MessageFactory.java |   0
 .../net/sf/briar/api/protocol/MessageId.java  |   0
 .../src}/net/sf/briar/api/protocol/Offer.java |   0
 .../sf/briar/api/protocol/PacketFactory.java  |   0
 .../briar/api/protocol/ProtocolConstants.java |   0
 .../sf/briar/api/protocol/ProtocolReader.java |   0
 .../api/protocol/ProtocolReaderFactory.java   |   0
 .../sf/briar/api/protocol/ProtocolWriter.java |   0
 .../api/protocol/ProtocolWriterFactory.java   |   0
 .../net/sf/briar/api/protocol/RawBatch.java   |   0
 .../net/sf/briar/api/protocol/Request.java    |   0
 .../api/protocol/SubscriptionUpdate.java      |   0
 .../net/sf/briar/api/protocol/Transport.java  |   0
 .../sf/briar/api/protocol/TransportId.java    |   0
 .../briar/api/protocol/TransportUpdate.java   |   0
 .../src}/net/sf/briar/api/protocol/Types.java |   0
 .../net/sf/briar/api/protocol/UniqueId.java   |   0
 .../briar/api/protocol/UnverifiedBatch.java   |   0
 .../api/protocol/VerificationExecutor.java    |   0
 .../duplex/DuplexConnectionFactory.java       |   0
 .../simplex/SimplexConnectionFactory.java     |   0
 .../net/sf/briar/api/serial/Consumer.java     |   0
 .../sf/briar/api/serial/CopyingConsumer.java  |   0
 .../sf/briar/api/serial/CountingConsumer.java |   0
 .../briar/api/serial/DigestingConsumer.java   |   0
 .../src}/net/sf/briar/api/serial/Reader.java  |   0
 .../sf/briar/api/serial/ReaderFactory.java    |   0
 .../sf/briar/api/serial/SerialComponent.java  |   0
 .../sf/briar/api/serial/SigningConsumer.java  |   0
 .../net/sf/briar/api/serial/StructReader.java |   0
 .../src}/net/sf/briar/api/serial/Writer.java  |   0
 .../sf/briar/api/serial/WriterFactory.java    |   0
 .../api/transport/ConnectionContext.java      |   0
 .../api/transport/ConnectionDispatcher.java   |   0
 .../briar/api/transport/ConnectionReader.java |   0
 .../transport/ConnectionReaderFactory.java    |   0
 .../api/transport/ConnectionRecogniser.java   |   0
 .../api/transport/ConnectionRegistry.java     |   0
 .../briar/api/transport/ConnectionWriter.java |   0
 .../transport/ConnectionWriterFactory.java    |   0
 .../briar/api/transport/ContactTransport.java |   0
 .../transport/IncomingConnectionExecutor.java |   0
 .../briar/api/transport/TemporarySecret.java  |   0
 .../api/transport/TransportConstants.java     |   0
 .../src}/net/sf/briar/api/ui/UiCallback.java  |   0
 .../src}/net/sf/briar/clock/ClockModule.java  |   0
 .../briar/crypto/AuthenticatedCipherImpl.java |   0
 .../sf/briar/crypto/CryptoComponentImpl.java  |   0
 .../net/sf/briar/crypto/CryptoModule.java     |   0
 .../net/sf/briar/crypto/DoubleDigest.java     |   0
 .../net/sf/briar/crypto/ErasableKeyImpl.java  |   0
 .../net/sf/briar/crypto/KeyParserImpl.java    |   0
 .../net/sf/briar/crypto/PseudoRandomImpl.java |   0
 .../src}/net/sf/briar/db/Database.java        |   0
 .../src}/net/sf/briar/db/DatabaseCleaner.java |   0
 .../net/sf/briar/db/DatabaseCleanerImpl.java  |   0
 .../sf/briar/db/DatabaseComponentImpl.java    |   0
 .../net/sf/briar/db/DatabaseConstants.java    |   0
 .../src}/net/sf/briar/db/DatabaseModule.java  |   0
 .../net/sf/briar/db/DbStateException.java     |   0
 .../src}/net/sf/briar/db/H2Database.java      |   0
 .../src}/net/sf/briar/db/JdbcDatabase.java    |   0
 .../net/sf/briar/db/MessageHeaderImpl.java    |   0
 .../src}/net/sf/briar/db/Status.java          |   0
 .../sf/briar/invitation/AliceConnector.java   |   0
 .../net/sf/briar/invitation/BobConnector.java |   0
 .../net/sf/briar/invitation/Connector.java    |   0
 .../sf/briar/invitation/ConnectorGroup.java   |   0
 .../invitation/InvitationManagerImpl.java     |   0
 .../sf/briar/invitation/InvitationModule.java |   0
 .../sf/briar/lifecycle/LifecycleModule.java   |   0
 .../briar/lifecycle/ShutdownManagerImpl.java  |   0
 .../lifecycle/WindowsShutdownManagerImpl.java |   0
 .../sf/briar/plugins/PluginManagerImpl.java   |   0
 .../net/sf/briar/plugins/PluginsModule.java   |   0
 .../src}/net/sf/briar/plugins/Poller.java     |   0
 .../src}/net/sf/briar/plugins/PollerImpl.java |   0
 .../plugins/bluetooth/BluetoothPlugin.java    |   0
 .../bluetooth/BluetoothPluginFactory.java     |   0
 .../BluetoothTransportConnection.java         |   0
 .../plugins/bluetooth/InvitationListener.java |   0
 .../plugins/droidtooth/DroidtoothPlugin.java  |   0
 .../droidtooth/DroidtoothPluginFactory.java   |   0
 .../DroidtoothTransportConnection.java        |   0
 .../plugins/droidtooth/InsecureBluetooth.java |   0
 .../net/sf/briar/plugins/file/FilePlugin.java |   0
 .../plugins/file/FileTransportReader.java     |   0
 .../plugins/file/FileTransportWriter.java     |   0
 .../file/LinuxRemovableDriveFinder.java       |   0
 .../file/LinuxRemovableDriveMonitor.java      |   0
 .../plugins/file/MacRemovableDriveFinder.java |   0
 .../file/MacRemovableDriveMonitor.java        |   0
 .../file/PollingRemovableDriveMonitor.java    |   0
 .../plugins/file/RemovableDriveFinder.java    |   0
 .../plugins/file/RemovableDriveMonitor.java   |   0
 .../plugins/file/RemovableDrivePlugin.java    |   0
 .../file/RemovableDrivePluginFactory.java     |   0
 .../file/UnixRemovableDriveFinder.java        |   0
 .../file/UnixRemovableDriveMonitor.java       |   0
 .../file/WindowsRemovableDriveFinder.java     |   0
 .../src}/net/sf/briar/plugins/modem/Ack.java  |   0
 .../net/sf/briar/plugins/modem/Crc32.java     |   0
 .../src}/net/sf/briar/plugins/modem/Data.java |   0
 .../net/sf/briar/plugins/modem/Frame.java     |   0
 .../net/sf/briar/plugins/modem/Modem.java     |   0
 .../sf/briar/plugins/modem/ModemFactory.java  |   0
 .../briar/plugins/modem/ModemFactoryImpl.java |   0
 .../net/sf/briar/plugins/modem/ModemImpl.java |   0
 .../sf/briar/plugins/modem/ModemPlugin.java   |   0
 .../plugins/modem/ModemPluginFactory.java     |   0
 .../sf/briar/plugins/modem/ReadHandler.java   |   0
 .../net/sf/briar/plugins/modem/Receiver.java  |   0
 .../plugins/modem/ReceiverInputStream.java    |   0
 .../briar/plugins/modem/ReliabilityLayer.java |   0
 .../net/sf/briar/plugins/modem/Sender.java    |   0
 .../plugins/modem/SenderOutputStream.java     |   0
 .../sf/briar/plugins/modem/SlipDecoder.java   |   0
 .../sf/briar/plugins/modem/SlipEncoder.java   |   0
 .../sf/briar/plugins/modem/WriteHandler.java  |   0
 .../sf/briar/plugins/tcp/LanTcpPlugin.java    |   0
 .../plugins/tcp/LanTcpPluginFactory.java      |   0
 .../sf/briar/plugins/tcp/MappingResult.java   |   0
 .../net/sf/briar/plugins/tcp/PortMapper.java  |   0
 .../sf/briar/plugins/tcp/PortMapperImpl.java  |   0
 .../net/sf/briar/plugins/tcp/TcpPlugin.java   |   0
 .../plugins/tcp/TcpTransportConnection.java   |   0
 .../sf/briar/plugins/tcp/WanTcpPlugin.java    |   0
 .../plugins/tcp/WanTcpPluginFactory.java      |   0
 .../net/sf/briar/plugins/tor/TorPlugin.java   |   0
 .../briar/plugins/tor/TorPluginFactory.java   |   0
 .../plugins/tor/TorTransportConnection.java   |   0
 .../src}/net/sf/briar/protocol/AckImpl.java   |   0
 .../src}/net/sf/briar/protocol/AckReader.java |   0
 .../sf/briar/protocol/AuthorFactoryImpl.java  |   0
 .../net/sf/briar/protocol/AuthorImpl.java     |   0
 .../net/sf/briar/protocol/AuthorReader.java   |   0
 .../src}/net/sf/briar/protocol/BatchImpl.java |   0
 .../net/sf/briar/protocol/BatchReader.java    |   0
 .../sf/briar/protocol/GroupFactoryImpl.java   |   0
 .../src}/net/sf/briar/protocol/GroupImpl.java |   0
 .../net/sf/briar/protocol/GroupReader.java    |   0
 .../sf/briar/protocol/MessageFactoryImpl.java |   0
 .../net/sf/briar/protocol/MessageImpl.java    |   0
 .../net/sf/briar/protocol/MessageReader.java  |   0
 .../src}/net/sf/briar/protocol/OfferImpl.java |   0
 .../net/sf/briar/protocol/OfferReader.java    |   0
 .../sf/briar/protocol/PacketFactoryImpl.java  |   0
 .../net/sf/briar/protocol/ProtocolModule.java |   0
 .../protocol/ProtocolReaderFactoryImpl.java   |   0
 .../sf/briar/protocol/ProtocolReaderImpl.java |   0
 .../protocol/ProtocolWriterFactoryImpl.java   |   0
 .../sf/briar/protocol/ProtocolWriterImpl.java |   0
 .../net/sf/briar/protocol/RawBatchImpl.java   |   0
 .../net/sf/briar/protocol/RequestImpl.java    |   0
 .../net/sf/briar/protocol/RequestReader.java  |   0
 .../protocol/SubscriptionUpdateImpl.java      |   0
 .../protocol/SubscriptionUpdateReader.java    |   0
 .../briar/protocol/TransportUpdateImpl.java   |   0
 .../briar/protocol/TransportUpdateReader.java |   0
 .../protocol/UnverifiedBatchFactory.java      |   0
 .../protocol/UnverifiedBatchFactoryImpl.java  |   0
 .../briar/protocol/UnverifiedBatchImpl.java   |   0
 .../sf/briar/protocol/UnverifiedMessage.java  |   0
 .../briar/protocol/UnverifiedMessageImpl.java |   0
 .../protocol/duplex/DuplexConnection.java     |   0
 .../duplex/DuplexConnectionFactoryImpl.java   |   0
 .../protocol/duplex/DuplexProtocolModule.java |   0
 .../duplex/IncomingDuplexConnection.java      |   0
 .../duplex/OutgoingDuplexConnection.java      |   0
 .../simplex/IncomingSimplexConnection.java    |   0
 .../simplex/OutgoingSimplexConnection.java    |   0
 .../simplex/SimplexConnectionFactoryImpl.java |   0
 .../simplex/SimplexProtocolModule.java        |   0
 .../sf/briar/serial/ReaderFactoryImpl.java    |   0
 .../src}/net/sf/briar/serial/ReaderImpl.java  |   0
 .../sf/briar/serial/SerialComponentImpl.java  |   0
 .../net/sf/briar/serial/SerialModule.java     |   0
 .../src}/net/sf/briar/serial/Tag.java         |   0
 .../sf/briar/serial/WriterFactoryImpl.java    |   0
 .../src}/net/sf/briar/serial/WriterImpl.java  |   0
 .../transport/ConnectionDispatcherImpl.java   |   0
 .../ConnectionReaderFactoryImpl.java          |   0
 .../briar/transport/ConnectionReaderImpl.java |   0
 .../transport/ConnectionRecogniserImpl.java   |   0
 .../transport/ConnectionRegistryImpl.java     |   0
 .../sf/briar/transport/ConnectionWindow.java  |   0
 .../ConnectionWriterFactoryImpl.java          |   0
 .../briar/transport/ConnectionWriterImpl.java |   0
 .../net/sf/briar/transport/FrameEncoder.java  |   0
 .../net/sf/briar/transport/FrameReader.java   |   0
 .../net/sf/briar/transport/FrameWriter.java   |   0
 .../transport/IncomingEncryptionLayer.java    |   0
 .../sf/briar/transport/KeyManagerImpl.java    |   0
 .../transport/OutgoingEncryptionLayer.java    |   0
 .../TransportConnectionRecogniser.java        |   0
 .../sf/briar/transport/TransportModule.java   |   0
 .../net/sf/briar/util/BoundedExecutor.java    |   0
 .../src}/net/sf/briar/util/ByteUtils.java     |   0
 .../src}/net/sf/briar/util/FileUtils.java     |   0
 .../src}/net/sf/briar/util/OsUtils.java       |   0
 .../src}/net/sf/briar/util/StringUtils.java   |   0
 .../src}/net/sf/briar/util/ZipUtils.java      |   0
 src/.gitignore                                |   1 -
 345 files changed, 43 insertions(+), 19 deletions(-)
 delete mode 100644 .settings/org.eclipse.jdt.core.prefs
 rename .classpath => briar-android/.classpath (82%)
 rename .project => briar-android/.project (96%)
 rename AndroidManifest.xml => briar-android/AndroidManifest.xml (100%)
 rename ant.properties => briar-android/ant.properties (100%)
 rename build.xml => briar-android/build.xml (100%)
 rename {libs => briar-android/libs}/roboguice-2.0.jar (100%)
 rename lint.xml => briar-android/lint.xml (100%)
 rename proguard-project.txt => briar-android/proguard-project.txt (100%)
 rename project.properties => briar-android/project.properties (100%)
 rename {res => briar-android/res}/drawable-hdpi/action_settings.png (100%)
 rename {res => briar-android/res}/drawable-hdpi/alerts_and_states_error.png (100%)
 rename {res => briar-android/res}/drawable-hdpi/alerts_and_states_warning.png (100%)
 rename {res => briar-android/res}/drawable-hdpi/ic_launcher.png (100%)
 rename {res => briar-android/res}/drawable-hdpi/navigation_accept.png (100%)
 rename {res => briar-android/res}/drawable-hdpi/social_add_person.png (100%)
 rename {res => briar-android/res}/drawable-ldpi/ic_launcher.png (100%)
 rename {res => briar-android/res}/drawable-mdpi/action_settings.png (100%)
 rename {res => briar-android/res}/drawable-mdpi/alerts_and_states_error.png (100%)
 rename {res => briar-android/res}/drawable-mdpi/alerts_and_states_warning.png (100%)
 rename {res => briar-android/res}/drawable-mdpi/ic_launcher.png (100%)
 rename {res => briar-android/res}/drawable-mdpi/navigation_accept.png (100%)
 rename {res => briar-android/res}/drawable-mdpi/social_add_person.png (100%)
 rename {res => briar-android/res}/drawable-xhdpi/action_settings.png (100%)
 rename {res => briar-android/res}/drawable-xhdpi/alerts_and_states_error.png (100%)
 rename {res => briar-android/res}/drawable-xhdpi/alerts_and_states_warning.png (100%)
 rename {res => briar-android/res}/drawable-xhdpi/ic_launcher.png (100%)
 rename {res => briar-android/res}/drawable-xhdpi/navigation_accept.png (100%)
 rename {res => briar-android/res}/drawable-xhdpi/social_add_person.png (100%)
 rename {res => briar-android/res}/values-v11/styles.xml (100%)
 rename {res => briar-android/res}/values/roboguice.xml (100%)
 rename {res => briar-android/res}/values/strings.xml (100%)
 rename {res => briar-android/res}/values/styles.xml (100%)
 rename {src => briar-android/src}/net/sf/briar/android/AndroidExecutorImpl.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/AndroidModule.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/helloworld/HelloWorldActivity.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/helloworld/HelloWorldModule.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/helloworld/HelloWorldService.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/invitation/AddContactActivity.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/invitation/AddContactView.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/invitation/BluetoothStateListener.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/invitation/BluetoothWidget.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/invitation/CodeEntryListener.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/invitation/CodeEntryWidget.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/invitation/CodesDoNotMatchView.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/invitation/ConfirmationCodeView.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/invitation/ConnectionFailedView.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/invitation/ConnectionView.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/invitation/ContactAddedView.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/invitation/InvitationCodeView.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/invitation/NetworkSetupView.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/invitation/WaitForContactView.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/invitation/WifiStateListener.java (100%)
 rename {src => briar-android/src}/net/sf/briar/android/invitation/WifiWidget.java (100%)
 create mode 100644 briar-core/.classpath
 create mode 100644 briar-core/.project
 rename android.jar => briar-core/android.jar (100%)
 rename {libs => briar-core/libs}/activation.jar (100%)
 rename {libs => briar-core/libs}/bluecove-2.1.0-briar.jar (100%)
 rename {libs => briar-core/libs}/bluecove-gpl-2.1.0.jar (100%)
 rename {libs => briar-core/libs}/commons-io-2.0.1.jar (100%)
 rename {libs => briar-core/libs}/guice-3.0-no_aop.jar (100%)
 rename {libs => briar-core/libs}/h2small-1.3.161.jar (100%)
 rename {libs => briar-core/libs}/javax.inject.jar (100%)
 rename {libs => briar-core/libs}/jna-3.5.1.jar (100%)
 rename {libs => briar-core/libs}/jnotify-0.93.jar (100%)
 rename {libs => briar-core/libs}/jssc-0.9-briar.jar (100%)
 rename {libs => briar-core/libs}/libjnotify.dylib (100%)
 rename {libs => briar-core/libs}/libjnotify.so (100%)
 rename {libs => briar-core/libs}/platform-3.5.1.jar (100%)
 rename {libs => briar-core/libs}/sc-light-jdk15on-1.47.0.3-SNAPSHOT.jar (100%)
 rename {libs => briar-core/libs}/scpkix-jdk15on-1.47.0.3-SNAPSHOT.jar (100%)
 rename {libs => briar-core/libs}/scprov-jdk15on-1.47.0.3-SNAPSHOT.jar (100%)
 rename {libs => briar-core/libs}/silvertunnel.org-netlib-0.14-briar.jar (100%)
 rename {libs => briar-core/libs}/weupnp-0.1.1.jar (100%)
 rename {src => briar-core/src}/build.xml (74%)
 rename {src => briar-core/src}/net/sf/briar/api/Bytes.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/ContactId.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/FormatException.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/Rating.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/TransportConfig.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/TransportProperties.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/android/AndroidExecutor.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/clock/Clock.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/clock/SystemClock.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/clock/SystemTimer.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/clock/Timer.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/crypto/AuthenticatedCipher.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/crypto/CryptoComponent.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/crypto/ErasableKey.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/crypto/KeyManager.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/crypto/KeyParser.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/crypto/MessageDigest.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/crypto/Password.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/crypto/PseudoRandom.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/db/DatabaseComponent.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/db/DatabaseConfig.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/db/DatabaseExecutor.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/db/DbClosedException.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/db/DbException.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/db/MessageHeader.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/db/NoSuchContactException.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/db/NoSuchContactTransportException.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/db/event/BatchReceivedEvent.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/db/event/ContactAddedEvent.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/db/event/ContactRemovedEvent.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/db/event/DatabaseEvent.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/db/event/DatabaseListener.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/db/event/LocalTransportsUpdatedEvent.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/db/event/MessagesAddedEvent.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/db/event/RatingChangedEvent.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/db/event/RemoteTransportsUpdatedEvent.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/db/event/SubscriptionsUpdatedEvent.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/invitation/InvitationListener.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/invitation/InvitationManager.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/invitation/InvitationState.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/invitation/InvitationTask.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/lifecycle/ShutdownManager.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/plugins/InvitationConstants.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/plugins/Plugin.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/plugins/PluginCallback.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/plugins/PluginExecutor.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/plugins/PluginManager.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/plugins/duplex/DuplexPlugin.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/plugins/duplex/DuplexPluginCallback.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/plugins/duplex/DuplexPluginFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/plugins/duplex/DuplexTransportConnection.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/plugins/simplex/SimplexPlugin.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/plugins/simplex/SimplexPluginCallback.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/plugins/simplex/SimplexPluginFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/plugins/simplex/SimplexTransportReader.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/plugins/simplex/SimplexTransportWriter.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/Ack.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/Author.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/AuthorFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/AuthorId.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/Batch.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/BatchId.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/Group.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/GroupFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/GroupId.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/Message.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/MessageFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/MessageId.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/Offer.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/PacketFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/ProtocolConstants.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/ProtocolReader.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/ProtocolReaderFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/ProtocolWriter.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/ProtocolWriterFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/RawBatch.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/Request.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/SubscriptionUpdate.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/Transport.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/TransportId.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/TransportUpdate.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/Types.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/UniqueId.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/UnverifiedBatch.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/VerificationExecutor.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/duplex/DuplexConnectionFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/protocol/simplex/SimplexConnectionFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/serial/Consumer.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/serial/CopyingConsumer.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/serial/CountingConsumer.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/serial/DigestingConsumer.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/serial/Reader.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/serial/ReaderFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/serial/SerialComponent.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/serial/SigningConsumer.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/serial/StructReader.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/serial/Writer.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/serial/WriterFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/transport/ConnectionContext.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/transport/ConnectionDispatcher.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/transport/ConnectionReader.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/transport/ConnectionReaderFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/transport/ConnectionRecogniser.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/transport/ConnectionRegistry.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/transport/ConnectionWriter.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/transport/ConnectionWriterFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/transport/ContactTransport.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/transport/IncomingConnectionExecutor.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/transport/TemporarySecret.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/transport/TransportConstants.java (100%)
 rename {src => briar-core/src}/net/sf/briar/api/ui/UiCallback.java (100%)
 rename {src => briar-core/src}/net/sf/briar/clock/ClockModule.java (100%)
 rename {src => briar-core/src}/net/sf/briar/crypto/AuthenticatedCipherImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/crypto/CryptoComponentImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/crypto/CryptoModule.java (100%)
 rename {src => briar-core/src}/net/sf/briar/crypto/DoubleDigest.java (100%)
 rename {src => briar-core/src}/net/sf/briar/crypto/ErasableKeyImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/crypto/KeyParserImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/crypto/PseudoRandomImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/db/Database.java (100%)
 rename {src => briar-core/src}/net/sf/briar/db/DatabaseCleaner.java (100%)
 rename {src => briar-core/src}/net/sf/briar/db/DatabaseCleanerImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/db/DatabaseComponentImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/db/DatabaseConstants.java (100%)
 rename {src => briar-core/src}/net/sf/briar/db/DatabaseModule.java (100%)
 rename {src => briar-core/src}/net/sf/briar/db/DbStateException.java (100%)
 rename {src => briar-core/src}/net/sf/briar/db/H2Database.java (100%)
 rename {src => briar-core/src}/net/sf/briar/db/JdbcDatabase.java (100%)
 rename {src => briar-core/src}/net/sf/briar/db/MessageHeaderImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/db/Status.java (100%)
 rename {src => briar-core/src}/net/sf/briar/invitation/AliceConnector.java (100%)
 rename {src => briar-core/src}/net/sf/briar/invitation/BobConnector.java (100%)
 rename {src => briar-core/src}/net/sf/briar/invitation/Connector.java (100%)
 rename {src => briar-core/src}/net/sf/briar/invitation/ConnectorGroup.java (100%)
 rename {src => briar-core/src}/net/sf/briar/invitation/InvitationManagerImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/invitation/InvitationModule.java (100%)
 rename {src => briar-core/src}/net/sf/briar/lifecycle/LifecycleModule.java (100%)
 rename {src => briar-core/src}/net/sf/briar/lifecycle/ShutdownManagerImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/lifecycle/WindowsShutdownManagerImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/PluginManagerImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/PluginsModule.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/Poller.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/PollerImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/bluetooth/BluetoothPlugin.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/bluetooth/BluetoothPluginFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/bluetooth/BluetoothTransportConnection.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/bluetooth/InvitationListener.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/droidtooth/DroidtoothPlugin.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/droidtooth/DroidtoothPluginFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/droidtooth/DroidtoothTransportConnection.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/droidtooth/InsecureBluetooth.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/file/FilePlugin.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/file/FileTransportReader.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/file/FileTransportWriter.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/file/LinuxRemovableDriveFinder.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/file/LinuxRemovableDriveMonitor.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/file/MacRemovableDriveFinder.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/file/MacRemovableDriveMonitor.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/file/PollingRemovableDriveMonitor.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/file/RemovableDriveFinder.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/file/RemovableDriveMonitor.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/file/RemovableDrivePlugin.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/file/RemovableDrivePluginFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/file/UnixRemovableDriveFinder.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/file/UnixRemovableDriveMonitor.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/file/WindowsRemovableDriveFinder.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/Ack.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/Crc32.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/Data.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/Frame.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/Modem.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/ModemFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/ModemFactoryImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/ModemImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/ModemPlugin.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/ModemPluginFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/ReadHandler.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/Receiver.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/ReceiverInputStream.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/ReliabilityLayer.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/Sender.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/SenderOutputStream.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/SlipDecoder.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/SlipEncoder.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/modem/WriteHandler.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/tcp/LanTcpPlugin.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/tcp/LanTcpPluginFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/tcp/MappingResult.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/tcp/PortMapper.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/tcp/PortMapperImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/tcp/TcpPlugin.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/tcp/TcpTransportConnection.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/tcp/WanTcpPlugin.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/tcp/WanTcpPluginFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/tor/TorPlugin.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/tor/TorPluginFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/plugins/tor/TorTransportConnection.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/AckImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/AckReader.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/AuthorFactoryImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/AuthorImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/AuthorReader.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/BatchImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/BatchReader.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/GroupFactoryImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/GroupImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/GroupReader.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/MessageFactoryImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/MessageImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/MessageReader.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/OfferImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/OfferReader.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/PacketFactoryImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/ProtocolModule.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/ProtocolReaderFactoryImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/ProtocolReaderImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/ProtocolWriterFactoryImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/ProtocolWriterImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/RawBatchImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/RequestImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/RequestReader.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/SubscriptionUpdateImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/SubscriptionUpdateReader.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/TransportUpdateImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/TransportUpdateReader.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/UnverifiedBatchFactory.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/UnverifiedBatchFactoryImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/UnverifiedBatchImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/UnverifiedMessage.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/UnverifiedMessageImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/duplex/DuplexConnection.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/duplex/DuplexConnectionFactoryImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/duplex/DuplexProtocolModule.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/duplex/IncomingDuplexConnection.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/duplex/OutgoingDuplexConnection.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/simplex/IncomingSimplexConnection.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/simplex/OutgoingSimplexConnection.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/simplex/SimplexConnectionFactoryImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/protocol/simplex/SimplexProtocolModule.java (100%)
 rename {src => briar-core/src}/net/sf/briar/serial/ReaderFactoryImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/serial/ReaderImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/serial/SerialComponentImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/serial/SerialModule.java (100%)
 rename {src => briar-core/src}/net/sf/briar/serial/Tag.java (100%)
 rename {src => briar-core/src}/net/sf/briar/serial/WriterFactoryImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/serial/WriterImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/transport/ConnectionDispatcherImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/transport/ConnectionReaderFactoryImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/transport/ConnectionReaderImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/transport/ConnectionRecogniserImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/transport/ConnectionRegistryImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/transport/ConnectionWindow.java (100%)
 rename {src => briar-core/src}/net/sf/briar/transport/ConnectionWriterFactoryImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/transport/ConnectionWriterImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/transport/FrameEncoder.java (100%)
 rename {src => briar-core/src}/net/sf/briar/transport/FrameReader.java (100%)
 rename {src => briar-core/src}/net/sf/briar/transport/FrameWriter.java (100%)
 rename {src => briar-core/src}/net/sf/briar/transport/IncomingEncryptionLayer.java (100%)
 rename {src => briar-core/src}/net/sf/briar/transport/KeyManagerImpl.java (100%)
 rename {src => briar-core/src}/net/sf/briar/transport/OutgoingEncryptionLayer.java (100%)
 rename {src => briar-core/src}/net/sf/briar/transport/TransportConnectionRecogniser.java (100%)
 rename {src => briar-core/src}/net/sf/briar/transport/TransportModule.java (100%)
 rename {src => briar-core/src}/net/sf/briar/util/BoundedExecutor.java (100%)
 rename {src => briar-core/src}/net/sf/briar/util/ByteUtils.java (100%)
 rename {src => briar-core/src}/net/sf/briar/util/FileUtils.java (100%)
 rename {src => briar-core/src}/net/sf/briar/util/OsUtils.java (100%)
 rename {src => briar-core/src}/net/sf/briar/util/StringUtils.java (100%)
 rename {src => briar-core/src}/net/sf/briar/util/ZipUtils.java (100%)
 delete mode 100644 src/.gitignore

diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 1cf0456755..0000000000
--- a/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,12 +0,0 @@
-#Wed Apr 13 15:01:36 BST 2011
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.5
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.5
diff --git a/.classpath b/briar-android/.classpath
similarity index 82%
rename from .classpath
rename to briar-android/.classpath
index a4763d1eec..d2675cc973 100644
--- a/.classpath
+++ b/briar-android/.classpath
@@ -4,5 +4,6 @@
 	<classpathentry kind="src" path="gen"/>
 	<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
 	<classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/briar-core"/>
 	<classpathentry kind="output" path="bin/classes"/>
 </classpath>
diff --git a/.project b/briar-android/.project
similarity index 96%
rename from .project
rename to briar-android/.project
index 401ff926eb..2483e2c221 100644
--- a/.project
+++ b/briar-android/.project
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <projectDescription>
-	<name>prototype</name>
+	<name>briar-android</name>
 	<comment></comment>
 	<projects>
 	</projects>
diff --git a/AndroidManifest.xml b/briar-android/AndroidManifest.xml
similarity index 100%
rename from AndroidManifest.xml
rename to briar-android/AndroidManifest.xml
diff --git a/ant.properties b/briar-android/ant.properties
similarity index 100%
rename from ant.properties
rename to briar-android/ant.properties
diff --git a/build.xml b/briar-android/build.xml
similarity index 100%
rename from build.xml
rename to briar-android/build.xml
diff --git a/libs/roboguice-2.0.jar b/briar-android/libs/roboguice-2.0.jar
similarity index 100%
rename from libs/roboguice-2.0.jar
rename to briar-android/libs/roboguice-2.0.jar
diff --git a/lint.xml b/briar-android/lint.xml
similarity index 100%
rename from lint.xml
rename to briar-android/lint.xml
diff --git a/proguard-project.txt b/briar-android/proguard-project.txt
similarity index 100%
rename from proguard-project.txt
rename to briar-android/proguard-project.txt
diff --git a/project.properties b/briar-android/project.properties
similarity index 100%
rename from project.properties
rename to briar-android/project.properties
diff --git a/res/drawable-hdpi/action_settings.png b/briar-android/res/drawable-hdpi/action_settings.png
similarity index 100%
rename from res/drawable-hdpi/action_settings.png
rename to briar-android/res/drawable-hdpi/action_settings.png
diff --git a/res/drawable-hdpi/alerts_and_states_error.png b/briar-android/res/drawable-hdpi/alerts_and_states_error.png
similarity index 100%
rename from res/drawable-hdpi/alerts_and_states_error.png
rename to briar-android/res/drawable-hdpi/alerts_and_states_error.png
diff --git a/res/drawable-hdpi/alerts_and_states_warning.png b/briar-android/res/drawable-hdpi/alerts_and_states_warning.png
similarity index 100%
rename from res/drawable-hdpi/alerts_and_states_warning.png
rename to briar-android/res/drawable-hdpi/alerts_and_states_warning.png
diff --git a/res/drawable-hdpi/ic_launcher.png b/briar-android/res/drawable-hdpi/ic_launcher.png
similarity index 100%
rename from res/drawable-hdpi/ic_launcher.png
rename to briar-android/res/drawable-hdpi/ic_launcher.png
diff --git a/res/drawable-hdpi/navigation_accept.png b/briar-android/res/drawable-hdpi/navigation_accept.png
similarity index 100%
rename from res/drawable-hdpi/navigation_accept.png
rename to briar-android/res/drawable-hdpi/navigation_accept.png
diff --git a/res/drawable-hdpi/social_add_person.png b/briar-android/res/drawable-hdpi/social_add_person.png
similarity index 100%
rename from res/drawable-hdpi/social_add_person.png
rename to briar-android/res/drawable-hdpi/social_add_person.png
diff --git a/res/drawable-ldpi/ic_launcher.png b/briar-android/res/drawable-ldpi/ic_launcher.png
similarity index 100%
rename from res/drawable-ldpi/ic_launcher.png
rename to briar-android/res/drawable-ldpi/ic_launcher.png
diff --git a/res/drawable-mdpi/action_settings.png b/briar-android/res/drawable-mdpi/action_settings.png
similarity index 100%
rename from res/drawable-mdpi/action_settings.png
rename to briar-android/res/drawable-mdpi/action_settings.png
diff --git a/res/drawable-mdpi/alerts_and_states_error.png b/briar-android/res/drawable-mdpi/alerts_and_states_error.png
similarity index 100%
rename from res/drawable-mdpi/alerts_and_states_error.png
rename to briar-android/res/drawable-mdpi/alerts_and_states_error.png
diff --git a/res/drawable-mdpi/alerts_and_states_warning.png b/briar-android/res/drawable-mdpi/alerts_and_states_warning.png
similarity index 100%
rename from res/drawable-mdpi/alerts_and_states_warning.png
rename to briar-android/res/drawable-mdpi/alerts_and_states_warning.png
diff --git a/res/drawable-mdpi/ic_launcher.png b/briar-android/res/drawable-mdpi/ic_launcher.png
similarity index 100%
rename from res/drawable-mdpi/ic_launcher.png
rename to briar-android/res/drawable-mdpi/ic_launcher.png
diff --git a/res/drawable-mdpi/navigation_accept.png b/briar-android/res/drawable-mdpi/navigation_accept.png
similarity index 100%
rename from res/drawable-mdpi/navigation_accept.png
rename to briar-android/res/drawable-mdpi/navigation_accept.png
diff --git a/res/drawable-mdpi/social_add_person.png b/briar-android/res/drawable-mdpi/social_add_person.png
similarity index 100%
rename from res/drawable-mdpi/social_add_person.png
rename to briar-android/res/drawable-mdpi/social_add_person.png
diff --git a/res/drawable-xhdpi/action_settings.png b/briar-android/res/drawable-xhdpi/action_settings.png
similarity index 100%
rename from res/drawable-xhdpi/action_settings.png
rename to briar-android/res/drawable-xhdpi/action_settings.png
diff --git a/res/drawable-xhdpi/alerts_and_states_error.png b/briar-android/res/drawable-xhdpi/alerts_and_states_error.png
similarity index 100%
rename from res/drawable-xhdpi/alerts_and_states_error.png
rename to briar-android/res/drawable-xhdpi/alerts_and_states_error.png
diff --git a/res/drawable-xhdpi/alerts_and_states_warning.png b/briar-android/res/drawable-xhdpi/alerts_and_states_warning.png
similarity index 100%
rename from res/drawable-xhdpi/alerts_and_states_warning.png
rename to briar-android/res/drawable-xhdpi/alerts_and_states_warning.png
diff --git a/res/drawable-xhdpi/ic_launcher.png b/briar-android/res/drawable-xhdpi/ic_launcher.png
similarity index 100%
rename from res/drawable-xhdpi/ic_launcher.png
rename to briar-android/res/drawable-xhdpi/ic_launcher.png
diff --git a/res/drawable-xhdpi/navigation_accept.png b/briar-android/res/drawable-xhdpi/navigation_accept.png
similarity index 100%
rename from res/drawable-xhdpi/navigation_accept.png
rename to briar-android/res/drawable-xhdpi/navigation_accept.png
diff --git a/res/drawable-xhdpi/social_add_person.png b/briar-android/res/drawable-xhdpi/social_add_person.png
similarity index 100%
rename from res/drawable-xhdpi/social_add_person.png
rename to briar-android/res/drawable-xhdpi/social_add_person.png
diff --git a/res/values-v11/styles.xml b/briar-android/res/values-v11/styles.xml
similarity index 100%
rename from res/values-v11/styles.xml
rename to briar-android/res/values-v11/styles.xml
diff --git a/res/values/roboguice.xml b/briar-android/res/values/roboguice.xml
similarity index 100%
rename from res/values/roboguice.xml
rename to briar-android/res/values/roboguice.xml
diff --git a/res/values/strings.xml b/briar-android/res/values/strings.xml
similarity index 100%
rename from res/values/strings.xml
rename to briar-android/res/values/strings.xml
diff --git a/res/values/styles.xml b/briar-android/res/values/styles.xml
similarity index 100%
rename from res/values/styles.xml
rename to briar-android/res/values/styles.xml
diff --git a/src/net/sf/briar/android/AndroidExecutorImpl.java b/briar-android/src/net/sf/briar/android/AndroidExecutorImpl.java
similarity index 100%
rename from src/net/sf/briar/android/AndroidExecutorImpl.java
rename to briar-android/src/net/sf/briar/android/AndroidExecutorImpl.java
diff --git a/src/net/sf/briar/android/AndroidModule.java b/briar-android/src/net/sf/briar/android/AndroidModule.java
similarity index 100%
rename from src/net/sf/briar/android/AndroidModule.java
rename to briar-android/src/net/sf/briar/android/AndroidModule.java
diff --git a/src/net/sf/briar/android/helloworld/HelloWorldActivity.java b/briar-android/src/net/sf/briar/android/helloworld/HelloWorldActivity.java
similarity index 100%
rename from src/net/sf/briar/android/helloworld/HelloWorldActivity.java
rename to briar-android/src/net/sf/briar/android/helloworld/HelloWorldActivity.java
diff --git a/src/net/sf/briar/android/helloworld/HelloWorldModule.java b/briar-android/src/net/sf/briar/android/helloworld/HelloWorldModule.java
similarity index 100%
rename from src/net/sf/briar/android/helloworld/HelloWorldModule.java
rename to briar-android/src/net/sf/briar/android/helloworld/HelloWorldModule.java
diff --git a/src/net/sf/briar/android/helloworld/HelloWorldService.java b/briar-android/src/net/sf/briar/android/helloworld/HelloWorldService.java
similarity index 100%
rename from src/net/sf/briar/android/helloworld/HelloWorldService.java
rename to briar-android/src/net/sf/briar/android/helloworld/HelloWorldService.java
diff --git a/src/net/sf/briar/android/invitation/AddContactActivity.java b/briar-android/src/net/sf/briar/android/invitation/AddContactActivity.java
similarity index 100%
rename from src/net/sf/briar/android/invitation/AddContactActivity.java
rename to briar-android/src/net/sf/briar/android/invitation/AddContactActivity.java
diff --git a/src/net/sf/briar/android/invitation/AddContactView.java b/briar-android/src/net/sf/briar/android/invitation/AddContactView.java
similarity index 100%
rename from src/net/sf/briar/android/invitation/AddContactView.java
rename to briar-android/src/net/sf/briar/android/invitation/AddContactView.java
diff --git a/src/net/sf/briar/android/invitation/BluetoothStateListener.java b/briar-android/src/net/sf/briar/android/invitation/BluetoothStateListener.java
similarity index 100%
rename from src/net/sf/briar/android/invitation/BluetoothStateListener.java
rename to briar-android/src/net/sf/briar/android/invitation/BluetoothStateListener.java
diff --git a/src/net/sf/briar/android/invitation/BluetoothWidget.java b/briar-android/src/net/sf/briar/android/invitation/BluetoothWidget.java
similarity index 100%
rename from src/net/sf/briar/android/invitation/BluetoothWidget.java
rename to briar-android/src/net/sf/briar/android/invitation/BluetoothWidget.java
diff --git a/src/net/sf/briar/android/invitation/CodeEntryListener.java b/briar-android/src/net/sf/briar/android/invitation/CodeEntryListener.java
similarity index 100%
rename from src/net/sf/briar/android/invitation/CodeEntryListener.java
rename to briar-android/src/net/sf/briar/android/invitation/CodeEntryListener.java
diff --git a/src/net/sf/briar/android/invitation/CodeEntryWidget.java b/briar-android/src/net/sf/briar/android/invitation/CodeEntryWidget.java
similarity index 100%
rename from src/net/sf/briar/android/invitation/CodeEntryWidget.java
rename to briar-android/src/net/sf/briar/android/invitation/CodeEntryWidget.java
diff --git a/src/net/sf/briar/android/invitation/CodesDoNotMatchView.java b/briar-android/src/net/sf/briar/android/invitation/CodesDoNotMatchView.java
similarity index 100%
rename from src/net/sf/briar/android/invitation/CodesDoNotMatchView.java
rename to briar-android/src/net/sf/briar/android/invitation/CodesDoNotMatchView.java
diff --git a/src/net/sf/briar/android/invitation/ConfirmationCodeView.java b/briar-android/src/net/sf/briar/android/invitation/ConfirmationCodeView.java
similarity index 100%
rename from src/net/sf/briar/android/invitation/ConfirmationCodeView.java
rename to briar-android/src/net/sf/briar/android/invitation/ConfirmationCodeView.java
diff --git a/src/net/sf/briar/android/invitation/ConnectionFailedView.java b/briar-android/src/net/sf/briar/android/invitation/ConnectionFailedView.java
similarity index 100%
rename from src/net/sf/briar/android/invitation/ConnectionFailedView.java
rename to briar-android/src/net/sf/briar/android/invitation/ConnectionFailedView.java
diff --git a/src/net/sf/briar/android/invitation/ConnectionView.java b/briar-android/src/net/sf/briar/android/invitation/ConnectionView.java
similarity index 100%
rename from src/net/sf/briar/android/invitation/ConnectionView.java
rename to briar-android/src/net/sf/briar/android/invitation/ConnectionView.java
diff --git a/src/net/sf/briar/android/invitation/ContactAddedView.java b/briar-android/src/net/sf/briar/android/invitation/ContactAddedView.java
similarity index 100%
rename from src/net/sf/briar/android/invitation/ContactAddedView.java
rename to briar-android/src/net/sf/briar/android/invitation/ContactAddedView.java
diff --git a/src/net/sf/briar/android/invitation/InvitationCodeView.java b/briar-android/src/net/sf/briar/android/invitation/InvitationCodeView.java
similarity index 100%
rename from src/net/sf/briar/android/invitation/InvitationCodeView.java
rename to briar-android/src/net/sf/briar/android/invitation/InvitationCodeView.java
diff --git a/src/net/sf/briar/android/invitation/NetworkSetupView.java b/briar-android/src/net/sf/briar/android/invitation/NetworkSetupView.java
similarity index 100%
rename from src/net/sf/briar/android/invitation/NetworkSetupView.java
rename to briar-android/src/net/sf/briar/android/invitation/NetworkSetupView.java
diff --git a/src/net/sf/briar/android/invitation/WaitForContactView.java b/briar-android/src/net/sf/briar/android/invitation/WaitForContactView.java
similarity index 100%
rename from src/net/sf/briar/android/invitation/WaitForContactView.java
rename to briar-android/src/net/sf/briar/android/invitation/WaitForContactView.java
diff --git a/src/net/sf/briar/android/invitation/WifiStateListener.java b/briar-android/src/net/sf/briar/android/invitation/WifiStateListener.java
similarity index 100%
rename from src/net/sf/briar/android/invitation/WifiStateListener.java
rename to briar-android/src/net/sf/briar/android/invitation/WifiStateListener.java
diff --git a/src/net/sf/briar/android/invitation/WifiWidget.java b/briar-android/src/net/sf/briar/android/invitation/WifiWidget.java
similarity index 100%
rename from src/net/sf/briar/android/invitation/WifiWidget.java
rename to briar-android/src/net/sf/briar/android/invitation/WifiWidget.java
diff --git a/briar-core/.classpath b/briar-core/.classpath
new file mode 100644
index 0000000000..eca48f30cf
--- /dev/null
+++ b/briar-core/.classpath
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+	<classpathentry kind="lib" path="libs/activation.jar"/>
+	<classpathentry kind="lib" path="libs/bluecove-2.1.0-briar.jar"/>
+	<classpathentry kind="lib" path="libs/bluecove-gpl-2.1.0.jar"/>
+	<classpathentry kind="lib" path="libs/commons-io-2.0.1.jar"/>
+	<classpathentry kind="lib" path="libs/guice-3.0-no_aop.jar"/>
+	<classpathentry kind="lib" path="libs/h2small-1.3.161.jar"/>
+	<classpathentry kind="lib" path="libs/javax.inject.jar"/>
+	<classpathentry kind="lib" path="libs/jna-3.5.1.jar"/>
+	<classpathentry kind="lib" path="libs/jnotify-0.93.jar"/>
+	<classpathentry kind="lib" path="libs/jssc-0.9-briar.jar"/>
+	<classpathentry kind="lib" path="libs/platform-3.5.1.jar"/>
+	<classpathentry kind="lib" path="libs/sc-light-jdk15on-1.47.0.3-SNAPSHOT.jar"/>
+	<classpathentry kind="lib" path="libs/scpkix-jdk15on-1.47.0.3-SNAPSHOT.jar"/>
+	<classpathentry kind="lib" path="libs/scprov-jdk15on-1.47.0.3-SNAPSHOT.jar"/>
+	<classpathentry kind="lib" path="libs/silvertunnel.org-netlib-0.14-briar.jar"/>
+	<classpathentry kind="lib" path="libs/weupnp-0.1.1.jar"/>
+	<classpathentry kind="lib" path="android.jar"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/briar-core/.project b/briar-core/.project
new file mode 100644
index 0000000000..8a586cd040
--- /dev/null
+++ b/briar-core/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>briar-core</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/android.jar b/briar-core/android.jar
similarity index 100%
rename from android.jar
rename to briar-core/android.jar
diff --git a/libs/activation.jar b/briar-core/libs/activation.jar
similarity index 100%
rename from libs/activation.jar
rename to briar-core/libs/activation.jar
diff --git a/libs/bluecove-2.1.0-briar.jar b/briar-core/libs/bluecove-2.1.0-briar.jar
similarity index 100%
rename from libs/bluecove-2.1.0-briar.jar
rename to briar-core/libs/bluecove-2.1.0-briar.jar
diff --git a/libs/bluecove-gpl-2.1.0.jar b/briar-core/libs/bluecove-gpl-2.1.0.jar
similarity index 100%
rename from libs/bluecove-gpl-2.1.0.jar
rename to briar-core/libs/bluecove-gpl-2.1.0.jar
diff --git a/libs/commons-io-2.0.1.jar b/briar-core/libs/commons-io-2.0.1.jar
similarity index 100%
rename from libs/commons-io-2.0.1.jar
rename to briar-core/libs/commons-io-2.0.1.jar
diff --git a/libs/guice-3.0-no_aop.jar b/briar-core/libs/guice-3.0-no_aop.jar
similarity index 100%
rename from libs/guice-3.0-no_aop.jar
rename to briar-core/libs/guice-3.0-no_aop.jar
diff --git a/libs/h2small-1.3.161.jar b/briar-core/libs/h2small-1.3.161.jar
similarity index 100%
rename from libs/h2small-1.3.161.jar
rename to briar-core/libs/h2small-1.3.161.jar
diff --git a/libs/javax.inject.jar b/briar-core/libs/javax.inject.jar
similarity index 100%
rename from libs/javax.inject.jar
rename to briar-core/libs/javax.inject.jar
diff --git a/libs/jna-3.5.1.jar b/briar-core/libs/jna-3.5.1.jar
similarity index 100%
rename from libs/jna-3.5.1.jar
rename to briar-core/libs/jna-3.5.1.jar
diff --git a/libs/jnotify-0.93.jar b/briar-core/libs/jnotify-0.93.jar
similarity index 100%
rename from libs/jnotify-0.93.jar
rename to briar-core/libs/jnotify-0.93.jar
diff --git a/libs/jssc-0.9-briar.jar b/briar-core/libs/jssc-0.9-briar.jar
similarity index 100%
rename from libs/jssc-0.9-briar.jar
rename to briar-core/libs/jssc-0.9-briar.jar
diff --git a/libs/libjnotify.dylib b/briar-core/libs/libjnotify.dylib
similarity index 100%
rename from libs/libjnotify.dylib
rename to briar-core/libs/libjnotify.dylib
diff --git a/libs/libjnotify.so b/briar-core/libs/libjnotify.so
similarity index 100%
rename from libs/libjnotify.so
rename to briar-core/libs/libjnotify.so
diff --git a/libs/platform-3.5.1.jar b/briar-core/libs/platform-3.5.1.jar
similarity index 100%
rename from libs/platform-3.5.1.jar
rename to briar-core/libs/platform-3.5.1.jar
diff --git a/libs/sc-light-jdk15on-1.47.0.3-SNAPSHOT.jar b/briar-core/libs/sc-light-jdk15on-1.47.0.3-SNAPSHOT.jar
similarity index 100%
rename from libs/sc-light-jdk15on-1.47.0.3-SNAPSHOT.jar
rename to briar-core/libs/sc-light-jdk15on-1.47.0.3-SNAPSHOT.jar
diff --git a/libs/scpkix-jdk15on-1.47.0.3-SNAPSHOT.jar b/briar-core/libs/scpkix-jdk15on-1.47.0.3-SNAPSHOT.jar
similarity index 100%
rename from libs/scpkix-jdk15on-1.47.0.3-SNAPSHOT.jar
rename to briar-core/libs/scpkix-jdk15on-1.47.0.3-SNAPSHOT.jar
diff --git a/libs/scprov-jdk15on-1.47.0.3-SNAPSHOT.jar b/briar-core/libs/scprov-jdk15on-1.47.0.3-SNAPSHOT.jar
similarity index 100%
rename from libs/scprov-jdk15on-1.47.0.3-SNAPSHOT.jar
rename to briar-core/libs/scprov-jdk15on-1.47.0.3-SNAPSHOT.jar
diff --git a/libs/silvertunnel.org-netlib-0.14-briar.jar b/briar-core/libs/silvertunnel.org-netlib-0.14-briar.jar
similarity index 100%
rename from libs/silvertunnel.org-netlib-0.14-briar.jar
rename to briar-core/libs/silvertunnel.org-netlib-0.14-briar.jar
diff --git a/libs/weupnp-0.1.1.jar b/briar-core/libs/weupnp-0.1.1.jar
similarity index 100%
rename from libs/weupnp-0.1.1.jar
rename to briar-core/libs/weupnp-0.1.1.jar
diff --git a/src/build.xml b/briar-core/src/build.xml
similarity index 74%
rename from src/build.xml
rename to briar-core/src/build.xml
index 2979431eda..5556a5ca81 100644
--- a/src/build.xml
+++ b/briar-core/src/build.xml
@@ -13,12 +13,8 @@
 	</target>
 	<target name='compile'>
 		<mkdir dir='../build'/>
-		<javac destdir='../build' source='1.5'
+		<javac srcdir='.' destdir='../build' source='1.5'
 			includeantruntime='false' debug='off'>
-			<src path='.'/>
-			<include name='net/sf/briar/**'/>
-			<exclude name='net/sf/briar/android/helloworld/**'/>
-			<exclude name='net/sf/briar/android/invitation/**'/>
 			<classpath>
 				<fileset refid='prototype-jars'/>
 				<path refid='android-jar'/>
diff --git a/src/net/sf/briar/api/Bytes.java b/briar-core/src/net/sf/briar/api/Bytes.java
similarity index 100%
rename from src/net/sf/briar/api/Bytes.java
rename to briar-core/src/net/sf/briar/api/Bytes.java
diff --git a/src/net/sf/briar/api/ContactId.java b/briar-core/src/net/sf/briar/api/ContactId.java
similarity index 100%
rename from src/net/sf/briar/api/ContactId.java
rename to briar-core/src/net/sf/briar/api/ContactId.java
diff --git a/src/net/sf/briar/api/FormatException.java b/briar-core/src/net/sf/briar/api/FormatException.java
similarity index 100%
rename from src/net/sf/briar/api/FormatException.java
rename to briar-core/src/net/sf/briar/api/FormatException.java
diff --git a/src/net/sf/briar/api/Rating.java b/briar-core/src/net/sf/briar/api/Rating.java
similarity index 100%
rename from src/net/sf/briar/api/Rating.java
rename to briar-core/src/net/sf/briar/api/Rating.java
diff --git a/src/net/sf/briar/api/TransportConfig.java b/briar-core/src/net/sf/briar/api/TransportConfig.java
similarity index 100%
rename from src/net/sf/briar/api/TransportConfig.java
rename to briar-core/src/net/sf/briar/api/TransportConfig.java
diff --git a/src/net/sf/briar/api/TransportProperties.java b/briar-core/src/net/sf/briar/api/TransportProperties.java
similarity index 100%
rename from src/net/sf/briar/api/TransportProperties.java
rename to briar-core/src/net/sf/briar/api/TransportProperties.java
diff --git a/src/net/sf/briar/api/android/AndroidExecutor.java b/briar-core/src/net/sf/briar/api/android/AndroidExecutor.java
similarity index 100%
rename from src/net/sf/briar/api/android/AndroidExecutor.java
rename to briar-core/src/net/sf/briar/api/android/AndroidExecutor.java
diff --git a/src/net/sf/briar/api/clock/Clock.java b/briar-core/src/net/sf/briar/api/clock/Clock.java
similarity index 100%
rename from src/net/sf/briar/api/clock/Clock.java
rename to briar-core/src/net/sf/briar/api/clock/Clock.java
diff --git a/src/net/sf/briar/api/clock/SystemClock.java b/briar-core/src/net/sf/briar/api/clock/SystemClock.java
similarity index 100%
rename from src/net/sf/briar/api/clock/SystemClock.java
rename to briar-core/src/net/sf/briar/api/clock/SystemClock.java
diff --git a/src/net/sf/briar/api/clock/SystemTimer.java b/briar-core/src/net/sf/briar/api/clock/SystemTimer.java
similarity index 100%
rename from src/net/sf/briar/api/clock/SystemTimer.java
rename to briar-core/src/net/sf/briar/api/clock/SystemTimer.java
diff --git a/src/net/sf/briar/api/clock/Timer.java b/briar-core/src/net/sf/briar/api/clock/Timer.java
similarity index 100%
rename from src/net/sf/briar/api/clock/Timer.java
rename to briar-core/src/net/sf/briar/api/clock/Timer.java
diff --git a/src/net/sf/briar/api/crypto/AuthenticatedCipher.java b/briar-core/src/net/sf/briar/api/crypto/AuthenticatedCipher.java
similarity index 100%
rename from src/net/sf/briar/api/crypto/AuthenticatedCipher.java
rename to briar-core/src/net/sf/briar/api/crypto/AuthenticatedCipher.java
diff --git a/src/net/sf/briar/api/crypto/CryptoComponent.java b/briar-core/src/net/sf/briar/api/crypto/CryptoComponent.java
similarity index 100%
rename from src/net/sf/briar/api/crypto/CryptoComponent.java
rename to briar-core/src/net/sf/briar/api/crypto/CryptoComponent.java
diff --git a/src/net/sf/briar/api/crypto/ErasableKey.java b/briar-core/src/net/sf/briar/api/crypto/ErasableKey.java
similarity index 100%
rename from src/net/sf/briar/api/crypto/ErasableKey.java
rename to briar-core/src/net/sf/briar/api/crypto/ErasableKey.java
diff --git a/src/net/sf/briar/api/crypto/KeyManager.java b/briar-core/src/net/sf/briar/api/crypto/KeyManager.java
similarity index 100%
rename from src/net/sf/briar/api/crypto/KeyManager.java
rename to briar-core/src/net/sf/briar/api/crypto/KeyManager.java
diff --git a/src/net/sf/briar/api/crypto/KeyParser.java b/briar-core/src/net/sf/briar/api/crypto/KeyParser.java
similarity index 100%
rename from src/net/sf/briar/api/crypto/KeyParser.java
rename to briar-core/src/net/sf/briar/api/crypto/KeyParser.java
diff --git a/src/net/sf/briar/api/crypto/MessageDigest.java b/briar-core/src/net/sf/briar/api/crypto/MessageDigest.java
similarity index 100%
rename from src/net/sf/briar/api/crypto/MessageDigest.java
rename to briar-core/src/net/sf/briar/api/crypto/MessageDigest.java
diff --git a/src/net/sf/briar/api/crypto/Password.java b/briar-core/src/net/sf/briar/api/crypto/Password.java
similarity index 100%
rename from src/net/sf/briar/api/crypto/Password.java
rename to briar-core/src/net/sf/briar/api/crypto/Password.java
diff --git a/src/net/sf/briar/api/crypto/PseudoRandom.java b/briar-core/src/net/sf/briar/api/crypto/PseudoRandom.java
similarity index 100%
rename from src/net/sf/briar/api/crypto/PseudoRandom.java
rename to briar-core/src/net/sf/briar/api/crypto/PseudoRandom.java
diff --git a/src/net/sf/briar/api/db/DatabaseComponent.java b/briar-core/src/net/sf/briar/api/db/DatabaseComponent.java
similarity index 100%
rename from src/net/sf/briar/api/db/DatabaseComponent.java
rename to briar-core/src/net/sf/briar/api/db/DatabaseComponent.java
diff --git a/src/net/sf/briar/api/db/DatabaseConfig.java b/briar-core/src/net/sf/briar/api/db/DatabaseConfig.java
similarity index 100%
rename from src/net/sf/briar/api/db/DatabaseConfig.java
rename to briar-core/src/net/sf/briar/api/db/DatabaseConfig.java
diff --git a/src/net/sf/briar/api/db/DatabaseExecutor.java b/briar-core/src/net/sf/briar/api/db/DatabaseExecutor.java
similarity index 100%
rename from src/net/sf/briar/api/db/DatabaseExecutor.java
rename to briar-core/src/net/sf/briar/api/db/DatabaseExecutor.java
diff --git a/src/net/sf/briar/api/db/DbClosedException.java b/briar-core/src/net/sf/briar/api/db/DbClosedException.java
similarity index 100%
rename from src/net/sf/briar/api/db/DbClosedException.java
rename to briar-core/src/net/sf/briar/api/db/DbClosedException.java
diff --git a/src/net/sf/briar/api/db/DbException.java b/briar-core/src/net/sf/briar/api/db/DbException.java
similarity index 100%
rename from src/net/sf/briar/api/db/DbException.java
rename to briar-core/src/net/sf/briar/api/db/DbException.java
diff --git a/src/net/sf/briar/api/db/MessageHeader.java b/briar-core/src/net/sf/briar/api/db/MessageHeader.java
similarity index 100%
rename from src/net/sf/briar/api/db/MessageHeader.java
rename to briar-core/src/net/sf/briar/api/db/MessageHeader.java
diff --git a/src/net/sf/briar/api/db/NoSuchContactException.java b/briar-core/src/net/sf/briar/api/db/NoSuchContactException.java
similarity index 100%
rename from src/net/sf/briar/api/db/NoSuchContactException.java
rename to briar-core/src/net/sf/briar/api/db/NoSuchContactException.java
diff --git a/src/net/sf/briar/api/db/NoSuchContactTransportException.java b/briar-core/src/net/sf/briar/api/db/NoSuchContactTransportException.java
similarity index 100%
rename from src/net/sf/briar/api/db/NoSuchContactTransportException.java
rename to briar-core/src/net/sf/briar/api/db/NoSuchContactTransportException.java
diff --git a/src/net/sf/briar/api/db/event/BatchReceivedEvent.java b/briar-core/src/net/sf/briar/api/db/event/BatchReceivedEvent.java
similarity index 100%
rename from src/net/sf/briar/api/db/event/BatchReceivedEvent.java
rename to briar-core/src/net/sf/briar/api/db/event/BatchReceivedEvent.java
diff --git a/src/net/sf/briar/api/db/event/ContactAddedEvent.java b/briar-core/src/net/sf/briar/api/db/event/ContactAddedEvent.java
similarity index 100%
rename from src/net/sf/briar/api/db/event/ContactAddedEvent.java
rename to briar-core/src/net/sf/briar/api/db/event/ContactAddedEvent.java
diff --git a/src/net/sf/briar/api/db/event/ContactRemovedEvent.java b/briar-core/src/net/sf/briar/api/db/event/ContactRemovedEvent.java
similarity index 100%
rename from src/net/sf/briar/api/db/event/ContactRemovedEvent.java
rename to briar-core/src/net/sf/briar/api/db/event/ContactRemovedEvent.java
diff --git a/src/net/sf/briar/api/db/event/DatabaseEvent.java b/briar-core/src/net/sf/briar/api/db/event/DatabaseEvent.java
similarity index 100%
rename from src/net/sf/briar/api/db/event/DatabaseEvent.java
rename to briar-core/src/net/sf/briar/api/db/event/DatabaseEvent.java
diff --git a/src/net/sf/briar/api/db/event/DatabaseListener.java b/briar-core/src/net/sf/briar/api/db/event/DatabaseListener.java
similarity index 100%
rename from src/net/sf/briar/api/db/event/DatabaseListener.java
rename to briar-core/src/net/sf/briar/api/db/event/DatabaseListener.java
diff --git a/src/net/sf/briar/api/db/event/LocalTransportsUpdatedEvent.java b/briar-core/src/net/sf/briar/api/db/event/LocalTransportsUpdatedEvent.java
similarity index 100%
rename from src/net/sf/briar/api/db/event/LocalTransportsUpdatedEvent.java
rename to briar-core/src/net/sf/briar/api/db/event/LocalTransportsUpdatedEvent.java
diff --git a/src/net/sf/briar/api/db/event/MessagesAddedEvent.java b/briar-core/src/net/sf/briar/api/db/event/MessagesAddedEvent.java
similarity index 100%
rename from src/net/sf/briar/api/db/event/MessagesAddedEvent.java
rename to briar-core/src/net/sf/briar/api/db/event/MessagesAddedEvent.java
diff --git a/src/net/sf/briar/api/db/event/RatingChangedEvent.java b/briar-core/src/net/sf/briar/api/db/event/RatingChangedEvent.java
similarity index 100%
rename from src/net/sf/briar/api/db/event/RatingChangedEvent.java
rename to briar-core/src/net/sf/briar/api/db/event/RatingChangedEvent.java
diff --git a/src/net/sf/briar/api/db/event/RemoteTransportsUpdatedEvent.java b/briar-core/src/net/sf/briar/api/db/event/RemoteTransportsUpdatedEvent.java
similarity index 100%
rename from src/net/sf/briar/api/db/event/RemoteTransportsUpdatedEvent.java
rename to briar-core/src/net/sf/briar/api/db/event/RemoteTransportsUpdatedEvent.java
diff --git a/src/net/sf/briar/api/db/event/SubscriptionsUpdatedEvent.java b/briar-core/src/net/sf/briar/api/db/event/SubscriptionsUpdatedEvent.java
similarity index 100%
rename from src/net/sf/briar/api/db/event/SubscriptionsUpdatedEvent.java
rename to briar-core/src/net/sf/briar/api/db/event/SubscriptionsUpdatedEvent.java
diff --git a/src/net/sf/briar/api/invitation/InvitationListener.java b/briar-core/src/net/sf/briar/api/invitation/InvitationListener.java
similarity index 100%
rename from src/net/sf/briar/api/invitation/InvitationListener.java
rename to briar-core/src/net/sf/briar/api/invitation/InvitationListener.java
diff --git a/src/net/sf/briar/api/invitation/InvitationManager.java b/briar-core/src/net/sf/briar/api/invitation/InvitationManager.java
similarity index 100%
rename from src/net/sf/briar/api/invitation/InvitationManager.java
rename to briar-core/src/net/sf/briar/api/invitation/InvitationManager.java
diff --git a/src/net/sf/briar/api/invitation/InvitationState.java b/briar-core/src/net/sf/briar/api/invitation/InvitationState.java
similarity index 100%
rename from src/net/sf/briar/api/invitation/InvitationState.java
rename to briar-core/src/net/sf/briar/api/invitation/InvitationState.java
diff --git a/src/net/sf/briar/api/invitation/InvitationTask.java b/briar-core/src/net/sf/briar/api/invitation/InvitationTask.java
similarity index 100%
rename from src/net/sf/briar/api/invitation/InvitationTask.java
rename to briar-core/src/net/sf/briar/api/invitation/InvitationTask.java
diff --git a/src/net/sf/briar/api/lifecycle/ShutdownManager.java b/briar-core/src/net/sf/briar/api/lifecycle/ShutdownManager.java
similarity index 100%
rename from src/net/sf/briar/api/lifecycle/ShutdownManager.java
rename to briar-core/src/net/sf/briar/api/lifecycle/ShutdownManager.java
diff --git a/src/net/sf/briar/api/plugins/InvitationConstants.java b/briar-core/src/net/sf/briar/api/plugins/InvitationConstants.java
similarity index 100%
rename from src/net/sf/briar/api/plugins/InvitationConstants.java
rename to briar-core/src/net/sf/briar/api/plugins/InvitationConstants.java
diff --git a/src/net/sf/briar/api/plugins/Plugin.java b/briar-core/src/net/sf/briar/api/plugins/Plugin.java
similarity index 100%
rename from src/net/sf/briar/api/plugins/Plugin.java
rename to briar-core/src/net/sf/briar/api/plugins/Plugin.java
diff --git a/src/net/sf/briar/api/plugins/PluginCallback.java b/briar-core/src/net/sf/briar/api/plugins/PluginCallback.java
similarity index 100%
rename from src/net/sf/briar/api/plugins/PluginCallback.java
rename to briar-core/src/net/sf/briar/api/plugins/PluginCallback.java
diff --git a/src/net/sf/briar/api/plugins/PluginExecutor.java b/briar-core/src/net/sf/briar/api/plugins/PluginExecutor.java
similarity index 100%
rename from src/net/sf/briar/api/plugins/PluginExecutor.java
rename to briar-core/src/net/sf/briar/api/plugins/PluginExecutor.java
diff --git a/src/net/sf/briar/api/plugins/PluginManager.java b/briar-core/src/net/sf/briar/api/plugins/PluginManager.java
similarity index 100%
rename from src/net/sf/briar/api/plugins/PluginManager.java
rename to briar-core/src/net/sf/briar/api/plugins/PluginManager.java
diff --git a/src/net/sf/briar/api/plugins/duplex/DuplexPlugin.java b/briar-core/src/net/sf/briar/api/plugins/duplex/DuplexPlugin.java
similarity index 100%
rename from src/net/sf/briar/api/plugins/duplex/DuplexPlugin.java
rename to briar-core/src/net/sf/briar/api/plugins/duplex/DuplexPlugin.java
diff --git a/src/net/sf/briar/api/plugins/duplex/DuplexPluginCallback.java b/briar-core/src/net/sf/briar/api/plugins/duplex/DuplexPluginCallback.java
similarity index 100%
rename from src/net/sf/briar/api/plugins/duplex/DuplexPluginCallback.java
rename to briar-core/src/net/sf/briar/api/plugins/duplex/DuplexPluginCallback.java
diff --git a/src/net/sf/briar/api/plugins/duplex/DuplexPluginFactory.java b/briar-core/src/net/sf/briar/api/plugins/duplex/DuplexPluginFactory.java
similarity index 100%
rename from src/net/sf/briar/api/plugins/duplex/DuplexPluginFactory.java
rename to briar-core/src/net/sf/briar/api/plugins/duplex/DuplexPluginFactory.java
diff --git a/src/net/sf/briar/api/plugins/duplex/DuplexTransportConnection.java b/briar-core/src/net/sf/briar/api/plugins/duplex/DuplexTransportConnection.java
similarity index 100%
rename from src/net/sf/briar/api/plugins/duplex/DuplexTransportConnection.java
rename to briar-core/src/net/sf/briar/api/plugins/duplex/DuplexTransportConnection.java
diff --git a/src/net/sf/briar/api/plugins/simplex/SimplexPlugin.java b/briar-core/src/net/sf/briar/api/plugins/simplex/SimplexPlugin.java
similarity index 100%
rename from src/net/sf/briar/api/plugins/simplex/SimplexPlugin.java
rename to briar-core/src/net/sf/briar/api/plugins/simplex/SimplexPlugin.java
diff --git a/src/net/sf/briar/api/plugins/simplex/SimplexPluginCallback.java b/briar-core/src/net/sf/briar/api/plugins/simplex/SimplexPluginCallback.java
similarity index 100%
rename from src/net/sf/briar/api/plugins/simplex/SimplexPluginCallback.java
rename to briar-core/src/net/sf/briar/api/plugins/simplex/SimplexPluginCallback.java
diff --git a/src/net/sf/briar/api/plugins/simplex/SimplexPluginFactory.java b/briar-core/src/net/sf/briar/api/plugins/simplex/SimplexPluginFactory.java
similarity index 100%
rename from src/net/sf/briar/api/plugins/simplex/SimplexPluginFactory.java
rename to briar-core/src/net/sf/briar/api/plugins/simplex/SimplexPluginFactory.java
diff --git a/src/net/sf/briar/api/plugins/simplex/SimplexTransportReader.java b/briar-core/src/net/sf/briar/api/plugins/simplex/SimplexTransportReader.java
similarity index 100%
rename from src/net/sf/briar/api/plugins/simplex/SimplexTransportReader.java
rename to briar-core/src/net/sf/briar/api/plugins/simplex/SimplexTransportReader.java
diff --git a/src/net/sf/briar/api/plugins/simplex/SimplexTransportWriter.java b/briar-core/src/net/sf/briar/api/plugins/simplex/SimplexTransportWriter.java
similarity index 100%
rename from src/net/sf/briar/api/plugins/simplex/SimplexTransportWriter.java
rename to briar-core/src/net/sf/briar/api/plugins/simplex/SimplexTransportWriter.java
diff --git a/src/net/sf/briar/api/protocol/Ack.java b/briar-core/src/net/sf/briar/api/protocol/Ack.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/Ack.java
rename to briar-core/src/net/sf/briar/api/protocol/Ack.java
diff --git a/src/net/sf/briar/api/protocol/Author.java b/briar-core/src/net/sf/briar/api/protocol/Author.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/Author.java
rename to briar-core/src/net/sf/briar/api/protocol/Author.java
diff --git a/src/net/sf/briar/api/protocol/AuthorFactory.java b/briar-core/src/net/sf/briar/api/protocol/AuthorFactory.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/AuthorFactory.java
rename to briar-core/src/net/sf/briar/api/protocol/AuthorFactory.java
diff --git a/src/net/sf/briar/api/protocol/AuthorId.java b/briar-core/src/net/sf/briar/api/protocol/AuthorId.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/AuthorId.java
rename to briar-core/src/net/sf/briar/api/protocol/AuthorId.java
diff --git a/src/net/sf/briar/api/protocol/Batch.java b/briar-core/src/net/sf/briar/api/protocol/Batch.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/Batch.java
rename to briar-core/src/net/sf/briar/api/protocol/Batch.java
diff --git a/src/net/sf/briar/api/protocol/BatchId.java b/briar-core/src/net/sf/briar/api/protocol/BatchId.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/BatchId.java
rename to briar-core/src/net/sf/briar/api/protocol/BatchId.java
diff --git a/src/net/sf/briar/api/protocol/Group.java b/briar-core/src/net/sf/briar/api/protocol/Group.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/Group.java
rename to briar-core/src/net/sf/briar/api/protocol/Group.java
diff --git a/src/net/sf/briar/api/protocol/GroupFactory.java b/briar-core/src/net/sf/briar/api/protocol/GroupFactory.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/GroupFactory.java
rename to briar-core/src/net/sf/briar/api/protocol/GroupFactory.java
diff --git a/src/net/sf/briar/api/protocol/GroupId.java b/briar-core/src/net/sf/briar/api/protocol/GroupId.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/GroupId.java
rename to briar-core/src/net/sf/briar/api/protocol/GroupId.java
diff --git a/src/net/sf/briar/api/protocol/Message.java b/briar-core/src/net/sf/briar/api/protocol/Message.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/Message.java
rename to briar-core/src/net/sf/briar/api/protocol/Message.java
diff --git a/src/net/sf/briar/api/protocol/MessageFactory.java b/briar-core/src/net/sf/briar/api/protocol/MessageFactory.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/MessageFactory.java
rename to briar-core/src/net/sf/briar/api/protocol/MessageFactory.java
diff --git a/src/net/sf/briar/api/protocol/MessageId.java b/briar-core/src/net/sf/briar/api/protocol/MessageId.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/MessageId.java
rename to briar-core/src/net/sf/briar/api/protocol/MessageId.java
diff --git a/src/net/sf/briar/api/protocol/Offer.java b/briar-core/src/net/sf/briar/api/protocol/Offer.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/Offer.java
rename to briar-core/src/net/sf/briar/api/protocol/Offer.java
diff --git a/src/net/sf/briar/api/protocol/PacketFactory.java b/briar-core/src/net/sf/briar/api/protocol/PacketFactory.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/PacketFactory.java
rename to briar-core/src/net/sf/briar/api/protocol/PacketFactory.java
diff --git a/src/net/sf/briar/api/protocol/ProtocolConstants.java b/briar-core/src/net/sf/briar/api/protocol/ProtocolConstants.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/ProtocolConstants.java
rename to briar-core/src/net/sf/briar/api/protocol/ProtocolConstants.java
diff --git a/src/net/sf/briar/api/protocol/ProtocolReader.java b/briar-core/src/net/sf/briar/api/protocol/ProtocolReader.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/ProtocolReader.java
rename to briar-core/src/net/sf/briar/api/protocol/ProtocolReader.java
diff --git a/src/net/sf/briar/api/protocol/ProtocolReaderFactory.java b/briar-core/src/net/sf/briar/api/protocol/ProtocolReaderFactory.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/ProtocolReaderFactory.java
rename to briar-core/src/net/sf/briar/api/protocol/ProtocolReaderFactory.java
diff --git a/src/net/sf/briar/api/protocol/ProtocolWriter.java b/briar-core/src/net/sf/briar/api/protocol/ProtocolWriter.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/ProtocolWriter.java
rename to briar-core/src/net/sf/briar/api/protocol/ProtocolWriter.java
diff --git a/src/net/sf/briar/api/protocol/ProtocolWriterFactory.java b/briar-core/src/net/sf/briar/api/protocol/ProtocolWriterFactory.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/ProtocolWriterFactory.java
rename to briar-core/src/net/sf/briar/api/protocol/ProtocolWriterFactory.java
diff --git a/src/net/sf/briar/api/protocol/RawBatch.java b/briar-core/src/net/sf/briar/api/protocol/RawBatch.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/RawBatch.java
rename to briar-core/src/net/sf/briar/api/protocol/RawBatch.java
diff --git a/src/net/sf/briar/api/protocol/Request.java b/briar-core/src/net/sf/briar/api/protocol/Request.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/Request.java
rename to briar-core/src/net/sf/briar/api/protocol/Request.java
diff --git a/src/net/sf/briar/api/protocol/SubscriptionUpdate.java b/briar-core/src/net/sf/briar/api/protocol/SubscriptionUpdate.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/SubscriptionUpdate.java
rename to briar-core/src/net/sf/briar/api/protocol/SubscriptionUpdate.java
diff --git a/src/net/sf/briar/api/protocol/Transport.java b/briar-core/src/net/sf/briar/api/protocol/Transport.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/Transport.java
rename to briar-core/src/net/sf/briar/api/protocol/Transport.java
diff --git a/src/net/sf/briar/api/protocol/TransportId.java b/briar-core/src/net/sf/briar/api/protocol/TransportId.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/TransportId.java
rename to briar-core/src/net/sf/briar/api/protocol/TransportId.java
diff --git a/src/net/sf/briar/api/protocol/TransportUpdate.java b/briar-core/src/net/sf/briar/api/protocol/TransportUpdate.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/TransportUpdate.java
rename to briar-core/src/net/sf/briar/api/protocol/TransportUpdate.java
diff --git a/src/net/sf/briar/api/protocol/Types.java b/briar-core/src/net/sf/briar/api/protocol/Types.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/Types.java
rename to briar-core/src/net/sf/briar/api/protocol/Types.java
diff --git a/src/net/sf/briar/api/protocol/UniqueId.java b/briar-core/src/net/sf/briar/api/protocol/UniqueId.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/UniqueId.java
rename to briar-core/src/net/sf/briar/api/protocol/UniqueId.java
diff --git a/src/net/sf/briar/api/protocol/UnverifiedBatch.java b/briar-core/src/net/sf/briar/api/protocol/UnverifiedBatch.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/UnverifiedBatch.java
rename to briar-core/src/net/sf/briar/api/protocol/UnverifiedBatch.java
diff --git a/src/net/sf/briar/api/protocol/VerificationExecutor.java b/briar-core/src/net/sf/briar/api/protocol/VerificationExecutor.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/VerificationExecutor.java
rename to briar-core/src/net/sf/briar/api/protocol/VerificationExecutor.java
diff --git a/src/net/sf/briar/api/protocol/duplex/DuplexConnectionFactory.java b/briar-core/src/net/sf/briar/api/protocol/duplex/DuplexConnectionFactory.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/duplex/DuplexConnectionFactory.java
rename to briar-core/src/net/sf/briar/api/protocol/duplex/DuplexConnectionFactory.java
diff --git a/src/net/sf/briar/api/protocol/simplex/SimplexConnectionFactory.java b/briar-core/src/net/sf/briar/api/protocol/simplex/SimplexConnectionFactory.java
similarity index 100%
rename from src/net/sf/briar/api/protocol/simplex/SimplexConnectionFactory.java
rename to briar-core/src/net/sf/briar/api/protocol/simplex/SimplexConnectionFactory.java
diff --git a/src/net/sf/briar/api/serial/Consumer.java b/briar-core/src/net/sf/briar/api/serial/Consumer.java
similarity index 100%
rename from src/net/sf/briar/api/serial/Consumer.java
rename to briar-core/src/net/sf/briar/api/serial/Consumer.java
diff --git a/src/net/sf/briar/api/serial/CopyingConsumer.java b/briar-core/src/net/sf/briar/api/serial/CopyingConsumer.java
similarity index 100%
rename from src/net/sf/briar/api/serial/CopyingConsumer.java
rename to briar-core/src/net/sf/briar/api/serial/CopyingConsumer.java
diff --git a/src/net/sf/briar/api/serial/CountingConsumer.java b/briar-core/src/net/sf/briar/api/serial/CountingConsumer.java
similarity index 100%
rename from src/net/sf/briar/api/serial/CountingConsumer.java
rename to briar-core/src/net/sf/briar/api/serial/CountingConsumer.java
diff --git a/src/net/sf/briar/api/serial/DigestingConsumer.java b/briar-core/src/net/sf/briar/api/serial/DigestingConsumer.java
similarity index 100%
rename from src/net/sf/briar/api/serial/DigestingConsumer.java
rename to briar-core/src/net/sf/briar/api/serial/DigestingConsumer.java
diff --git a/src/net/sf/briar/api/serial/Reader.java b/briar-core/src/net/sf/briar/api/serial/Reader.java
similarity index 100%
rename from src/net/sf/briar/api/serial/Reader.java
rename to briar-core/src/net/sf/briar/api/serial/Reader.java
diff --git a/src/net/sf/briar/api/serial/ReaderFactory.java b/briar-core/src/net/sf/briar/api/serial/ReaderFactory.java
similarity index 100%
rename from src/net/sf/briar/api/serial/ReaderFactory.java
rename to briar-core/src/net/sf/briar/api/serial/ReaderFactory.java
diff --git a/src/net/sf/briar/api/serial/SerialComponent.java b/briar-core/src/net/sf/briar/api/serial/SerialComponent.java
similarity index 100%
rename from src/net/sf/briar/api/serial/SerialComponent.java
rename to briar-core/src/net/sf/briar/api/serial/SerialComponent.java
diff --git a/src/net/sf/briar/api/serial/SigningConsumer.java b/briar-core/src/net/sf/briar/api/serial/SigningConsumer.java
similarity index 100%
rename from src/net/sf/briar/api/serial/SigningConsumer.java
rename to briar-core/src/net/sf/briar/api/serial/SigningConsumer.java
diff --git a/src/net/sf/briar/api/serial/StructReader.java b/briar-core/src/net/sf/briar/api/serial/StructReader.java
similarity index 100%
rename from src/net/sf/briar/api/serial/StructReader.java
rename to briar-core/src/net/sf/briar/api/serial/StructReader.java
diff --git a/src/net/sf/briar/api/serial/Writer.java b/briar-core/src/net/sf/briar/api/serial/Writer.java
similarity index 100%
rename from src/net/sf/briar/api/serial/Writer.java
rename to briar-core/src/net/sf/briar/api/serial/Writer.java
diff --git a/src/net/sf/briar/api/serial/WriterFactory.java b/briar-core/src/net/sf/briar/api/serial/WriterFactory.java
similarity index 100%
rename from src/net/sf/briar/api/serial/WriterFactory.java
rename to briar-core/src/net/sf/briar/api/serial/WriterFactory.java
diff --git a/src/net/sf/briar/api/transport/ConnectionContext.java b/briar-core/src/net/sf/briar/api/transport/ConnectionContext.java
similarity index 100%
rename from src/net/sf/briar/api/transport/ConnectionContext.java
rename to briar-core/src/net/sf/briar/api/transport/ConnectionContext.java
diff --git a/src/net/sf/briar/api/transport/ConnectionDispatcher.java b/briar-core/src/net/sf/briar/api/transport/ConnectionDispatcher.java
similarity index 100%
rename from src/net/sf/briar/api/transport/ConnectionDispatcher.java
rename to briar-core/src/net/sf/briar/api/transport/ConnectionDispatcher.java
diff --git a/src/net/sf/briar/api/transport/ConnectionReader.java b/briar-core/src/net/sf/briar/api/transport/ConnectionReader.java
similarity index 100%
rename from src/net/sf/briar/api/transport/ConnectionReader.java
rename to briar-core/src/net/sf/briar/api/transport/ConnectionReader.java
diff --git a/src/net/sf/briar/api/transport/ConnectionReaderFactory.java b/briar-core/src/net/sf/briar/api/transport/ConnectionReaderFactory.java
similarity index 100%
rename from src/net/sf/briar/api/transport/ConnectionReaderFactory.java
rename to briar-core/src/net/sf/briar/api/transport/ConnectionReaderFactory.java
diff --git a/src/net/sf/briar/api/transport/ConnectionRecogniser.java b/briar-core/src/net/sf/briar/api/transport/ConnectionRecogniser.java
similarity index 100%
rename from src/net/sf/briar/api/transport/ConnectionRecogniser.java
rename to briar-core/src/net/sf/briar/api/transport/ConnectionRecogniser.java
diff --git a/src/net/sf/briar/api/transport/ConnectionRegistry.java b/briar-core/src/net/sf/briar/api/transport/ConnectionRegistry.java
similarity index 100%
rename from src/net/sf/briar/api/transport/ConnectionRegistry.java
rename to briar-core/src/net/sf/briar/api/transport/ConnectionRegistry.java
diff --git a/src/net/sf/briar/api/transport/ConnectionWriter.java b/briar-core/src/net/sf/briar/api/transport/ConnectionWriter.java
similarity index 100%
rename from src/net/sf/briar/api/transport/ConnectionWriter.java
rename to briar-core/src/net/sf/briar/api/transport/ConnectionWriter.java
diff --git a/src/net/sf/briar/api/transport/ConnectionWriterFactory.java b/briar-core/src/net/sf/briar/api/transport/ConnectionWriterFactory.java
similarity index 100%
rename from src/net/sf/briar/api/transport/ConnectionWriterFactory.java
rename to briar-core/src/net/sf/briar/api/transport/ConnectionWriterFactory.java
diff --git a/src/net/sf/briar/api/transport/ContactTransport.java b/briar-core/src/net/sf/briar/api/transport/ContactTransport.java
similarity index 100%
rename from src/net/sf/briar/api/transport/ContactTransport.java
rename to briar-core/src/net/sf/briar/api/transport/ContactTransport.java
diff --git a/src/net/sf/briar/api/transport/IncomingConnectionExecutor.java b/briar-core/src/net/sf/briar/api/transport/IncomingConnectionExecutor.java
similarity index 100%
rename from src/net/sf/briar/api/transport/IncomingConnectionExecutor.java
rename to briar-core/src/net/sf/briar/api/transport/IncomingConnectionExecutor.java
diff --git a/src/net/sf/briar/api/transport/TemporarySecret.java b/briar-core/src/net/sf/briar/api/transport/TemporarySecret.java
similarity index 100%
rename from src/net/sf/briar/api/transport/TemporarySecret.java
rename to briar-core/src/net/sf/briar/api/transport/TemporarySecret.java
diff --git a/src/net/sf/briar/api/transport/TransportConstants.java b/briar-core/src/net/sf/briar/api/transport/TransportConstants.java
similarity index 100%
rename from src/net/sf/briar/api/transport/TransportConstants.java
rename to briar-core/src/net/sf/briar/api/transport/TransportConstants.java
diff --git a/src/net/sf/briar/api/ui/UiCallback.java b/briar-core/src/net/sf/briar/api/ui/UiCallback.java
similarity index 100%
rename from src/net/sf/briar/api/ui/UiCallback.java
rename to briar-core/src/net/sf/briar/api/ui/UiCallback.java
diff --git a/src/net/sf/briar/clock/ClockModule.java b/briar-core/src/net/sf/briar/clock/ClockModule.java
similarity index 100%
rename from src/net/sf/briar/clock/ClockModule.java
rename to briar-core/src/net/sf/briar/clock/ClockModule.java
diff --git a/src/net/sf/briar/crypto/AuthenticatedCipherImpl.java b/briar-core/src/net/sf/briar/crypto/AuthenticatedCipherImpl.java
similarity index 100%
rename from src/net/sf/briar/crypto/AuthenticatedCipherImpl.java
rename to briar-core/src/net/sf/briar/crypto/AuthenticatedCipherImpl.java
diff --git a/src/net/sf/briar/crypto/CryptoComponentImpl.java b/briar-core/src/net/sf/briar/crypto/CryptoComponentImpl.java
similarity index 100%
rename from src/net/sf/briar/crypto/CryptoComponentImpl.java
rename to briar-core/src/net/sf/briar/crypto/CryptoComponentImpl.java
diff --git a/src/net/sf/briar/crypto/CryptoModule.java b/briar-core/src/net/sf/briar/crypto/CryptoModule.java
similarity index 100%
rename from src/net/sf/briar/crypto/CryptoModule.java
rename to briar-core/src/net/sf/briar/crypto/CryptoModule.java
diff --git a/src/net/sf/briar/crypto/DoubleDigest.java b/briar-core/src/net/sf/briar/crypto/DoubleDigest.java
similarity index 100%
rename from src/net/sf/briar/crypto/DoubleDigest.java
rename to briar-core/src/net/sf/briar/crypto/DoubleDigest.java
diff --git a/src/net/sf/briar/crypto/ErasableKeyImpl.java b/briar-core/src/net/sf/briar/crypto/ErasableKeyImpl.java
similarity index 100%
rename from src/net/sf/briar/crypto/ErasableKeyImpl.java
rename to briar-core/src/net/sf/briar/crypto/ErasableKeyImpl.java
diff --git a/src/net/sf/briar/crypto/KeyParserImpl.java b/briar-core/src/net/sf/briar/crypto/KeyParserImpl.java
similarity index 100%
rename from src/net/sf/briar/crypto/KeyParserImpl.java
rename to briar-core/src/net/sf/briar/crypto/KeyParserImpl.java
diff --git a/src/net/sf/briar/crypto/PseudoRandomImpl.java b/briar-core/src/net/sf/briar/crypto/PseudoRandomImpl.java
similarity index 100%
rename from src/net/sf/briar/crypto/PseudoRandomImpl.java
rename to briar-core/src/net/sf/briar/crypto/PseudoRandomImpl.java
diff --git a/src/net/sf/briar/db/Database.java b/briar-core/src/net/sf/briar/db/Database.java
similarity index 100%
rename from src/net/sf/briar/db/Database.java
rename to briar-core/src/net/sf/briar/db/Database.java
diff --git a/src/net/sf/briar/db/DatabaseCleaner.java b/briar-core/src/net/sf/briar/db/DatabaseCleaner.java
similarity index 100%
rename from src/net/sf/briar/db/DatabaseCleaner.java
rename to briar-core/src/net/sf/briar/db/DatabaseCleaner.java
diff --git a/src/net/sf/briar/db/DatabaseCleanerImpl.java b/briar-core/src/net/sf/briar/db/DatabaseCleanerImpl.java
similarity index 100%
rename from src/net/sf/briar/db/DatabaseCleanerImpl.java
rename to briar-core/src/net/sf/briar/db/DatabaseCleanerImpl.java
diff --git a/src/net/sf/briar/db/DatabaseComponentImpl.java b/briar-core/src/net/sf/briar/db/DatabaseComponentImpl.java
similarity index 100%
rename from src/net/sf/briar/db/DatabaseComponentImpl.java
rename to briar-core/src/net/sf/briar/db/DatabaseComponentImpl.java
diff --git a/src/net/sf/briar/db/DatabaseConstants.java b/briar-core/src/net/sf/briar/db/DatabaseConstants.java
similarity index 100%
rename from src/net/sf/briar/db/DatabaseConstants.java
rename to briar-core/src/net/sf/briar/db/DatabaseConstants.java
diff --git a/src/net/sf/briar/db/DatabaseModule.java b/briar-core/src/net/sf/briar/db/DatabaseModule.java
similarity index 100%
rename from src/net/sf/briar/db/DatabaseModule.java
rename to briar-core/src/net/sf/briar/db/DatabaseModule.java
diff --git a/src/net/sf/briar/db/DbStateException.java b/briar-core/src/net/sf/briar/db/DbStateException.java
similarity index 100%
rename from src/net/sf/briar/db/DbStateException.java
rename to briar-core/src/net/sf/briar/db/DbStateException.java
diff --git a/src/net/sf/briar/db/H2Database.java b/briar-core/src/net/sf/briar/db/H2Database.java
similarity index 100%
rename from src/net/sf/briar/db/H2Database.java
rename to briar-core/src/net/sf/briar/db/H2Database.java
diff --git a/src/net/sf/briar/db/JdbcDatabase.java b/briar-core/src/net/sf/briar/db/JdbcDatabase.java
similarity index 100%
rename from src/net/sf/briar/db/JdbcDatabase.java
rename to briar-core/src/net/sf/briar/db/JdbcDatabase.java
diff --git a/src/net/sf/briar/db/MessageHeaderImpl.java b/briar-core/src/net/sf/briar/db/MessageHeaderImpl.java
similarity index 100%
rename from src/net/sf/briar/db/MessageHeaderImpl.java
rename to briar-core/src/net/sf/briar/db/MessageHeaderImpl.java
diff --git a/src/net/sf/briar/db/Status.java b/briar-core/src/net/sf/briar/db/Status.java
similarity index 100%
rename from src/net/sf/briar/db/Status.java
rename to briar-core/src/net/sf/briar/db/Status.java
diff --git a/src/net/sf/briar/invitation/AliceConnector.java b/briar-core/src/net/sf/briar/invitation/AliceConnector.java
similarity index 100%
rename from src/net/sf/briar/invitation/AliceConnector.java
rename to briar-core/src/net/sf/briar/invitation/AliceConnector.java
diff --git a/src/net/sf/briar/invitation/BobConnector.java b/briar-core/src/net/sf/briar/invitation/BobConnector.java
similarity index 100%
rename from src/net/sf/briar/invitation/BobConnector.java
rename to briar-core/src/net/sf/briar/invitation/BobConnector.java
diff --git a/src/net/sf/briar/invitation/Connector.java b/briar-core/src/net/sf/briar/invitation/Connector.java
similarity index 100%
rename from src/net/sf/briar/invitation/Connector.java
rename to briar-core/src/net/sf/briar/invitation/Connector.java
diff --git a/src/net/sf/briar/invitation/ConnectorGroup.java b/briar-core/src/net/sf/briar/invitation/ConnectorGroup.java
similarity index 100%
rename from src/net/sf/briar/invitation/ConnectorGroup.java
rename to briar-core/src/net/sf/briar/invitation/ConnectorGroup.java
diff --git a/src/net/sf/briar/invitation/InvitationManagerImpl.java b/briar-core/src/net/sf/briar/invitation/InvitationManagerImpl.java
similarity index 100%
rename from src/net/sf/briar/invitation/InvitationManagerImpl.java
rename to briar-core/src/net/sf/briar/invitation/InvitationManagerImpl.java
diff --git a/src/net/sf/briar/invitation/InvitationModule.java b/briar-core/src/net/sf/briar/invitation/InvitationModule.java
similarity index 100%
rename from src/net/sf/briar/invitation/InvitationModule.java
rename to briar-core/src/net/sf/briar/invitation/InvitationModule.java
diff --git a/src/net/sf/briar/lifecycle/LifecycleModule.java b/briar-core/src/net/sf/briar/lifecycle/LifecycleModule.java
similarity index 100%
rename from src/net/sf/briar/lifecycle/LifecycleModule.java
rename to briar-core/src/net/sf/briar/lifecycle/LifecycleModule.java
diff --git a/src/net/sf/briar/lifecycle/ShutdownManagerImpl.java b/briar-core/src/net/sf/briar/lifecycle/ShutdownManagerImpl.java
similarity index 100%
rename from src/net/sf/briar/lifecycle/ShutdownManagerImpl.java
rename to briar-core/src/net/sf/briar/lifecycle/ShutdownManagerImpl.java
diff --git a/src/net/sf/briar/lifecycle/WindowsShutdownManagerImpl.java b/briar-core/src/net/sf/briar/lifecycle/WindowsShutdownManagerImpl.java
similarity index 100%
rename from src/net/sf/briar/lifecycle/WindowsShutdownManagerImpl.java
rename to briar-core/src/net/sf/briar/lifecycle/WindowsShutdownManagerImpl.java
diff --git a/src/net/sf/briar/plugins/PluginManagerImpl.java b/briar-core/src/net/sf/briar/plugins/PluginManagerImpl.java
similarity index 100%
rename from src/net/sf/briar/plugins/PluginManagerImpl.java
rename to briar-core/src/net/sf/briar/plugins/PluginManagerImpl.java
diff --git a/src/net/sf/briar/plugins/PluginsModule.java b/briar-core/src/net/sf/briar/plugins/PluginsModule.java
similarity index 100%
rename from src/net/sf/briar/plugins/PluginsModule.java
rename to briar-core/src/net/sf/briar/plugins/PluginsModule.java
diff --git a/src/net/sf/briar/plugins/Poller.java b/briar-core/src/net/sf/briar/plugins/Poller.java
similarity index 100%
rename from src/net/sf/briar/plugins/Poller.java
rename to briar-core/src/net/sf/briar/plugins/Poller.java
diff --git a/src/net/sf/briar/plugins/PollerImpl.java b/briar-core/src/net/sf/briar/plugins/PollerImpl.java
similarity index 100%
rename from src/net/sf/briar/plugins/PollerImpl.java
rename to briar-core/src/net/sf/briar/plugins/PollerImpl.java
diff --git a/src/net/sf/briar/plugins/bluetooth/BluetoothPlugin.java b/briar-core/src/net/sf/briar/plugins/bluetooth/BluetoothPlugin.java
similarity index 100%
rename from src/net/sf/briar/plugins/bluetooth/BluetoothPlugin.java
rename to briar-core/src/net/sf/briar/plugins/bluetooth/BluetoothPlugin.java
diff --git a/src/net/sf/briar/plugins/bluetooth/BluetoothPluginFactory.java b/briar-core/src/net/sf/briar/plugins/bluetooth/BluetoothPluginFactory.java
similarity index 100%
rename from src/net/sf/briar/plugins/bluetooth/BluetoothPluginFactory.java
rename to briar-core/src/net/sf/briar/plugins/bluetooth/BluetoothPluginFactory.java
diff --git a/src/net/sf/briar/plugins/bluetooth/BluetoothTransportConnection.java b/briar-core/src/net/sf/briar/plugins/bluetooth/BluetoothTransportConnection.java
similarity index 100%
rename from src/net/sf/briar/plugins/bluetooth/BluetoothTransportConnection.java
rename to briar-core/src/net/sf/briar/plugins/bluetooth/BluetoothTransportConnection.java
diff --git a/src/net/sf/briar/plugins/bluetooth/InvitationListener.java b/briar-core/src/net/sf/briar/plugins/bluetooth/InvitationListener.java
similarity index 100%
rename from src/net/sf/briar/plugins/bluetooth/InvitationListener.java
rename to briar-core/src/net/sf/briar/plugins/bluetooth/InvitationListener.java
diff --git a/src/net/sf/briar/plugins/droidtooth/DroidtoothPlugin.java b/briar-core/src/net/sf/briar/plugins/droidtooth/DroidtoothPlugin.java
similarity index 100%
rename from src/net/sf/briar/plugins/droidtooth/DroidtoothPlugin.java
rename to briar-core/src/net/sf/briar/plugins/droidtooth/DroidtoothPlugin.java
diff --git a/src/net/sf/briar/plugins/droidtooth/DroidtoothPluginFactory.java b/briar-core/src/net/sf/briar/plugins/droidtooth/DroidtoothPluginFactory.java
similarity index 100%
rename from src/net/sf/briar/plugins/droidtooth/DroidtoothPluginFactory.java
rename to briar-core/src/net/sf/briar/plugins/droidtooth/DroidtoothPluginFactory.java
diff --git a/src/net/sf/briar/plugins/droidtooth/DroidtoothTransportConnection.java b/briar-core/src/net/sf/briar/plugins/droidtooth/DroidtoothTransportConnection.java
similarity index 100%
rename from src/net/sf/briar/plugins/droidtooth/DroidtoothTransportConnection.java
rename to briar-core/src/net/sf/briar/plugins/droidtooth/DroidtoothTransportConnection.java
diff --git a/src/net/sf/briar/plugins/droidtooth/InsecureBluetooth.java b/briar-core/src/net/sf/briar/plugins/droidtooth/InsecureBluetooth.java
similarity index 100%
rename from src/net/sf/briar/plugins/droidtooth/InsecureBluetooth.java
rename to briar-core/src/net/sf/briar/plugins/droidtooth/InsecureBluetooth.java
diff --git a/src/net/sf/briar/plugins/file/FilePlugin.java b/briar-core/src/net/sf/briar/plugins/file/FilePlugin.java
similarity index 100%
rename from src/net/sf/briar/plugins/file/FilePlugin.java
rename to briar-core/src/net/sf/briar/plugins/file/FilePlugin.java
diff --git a/src/net/sf/briar/plugins/file/FileTransportReader.java b/briar-core/src/net/sf/briar/plugins/file/FileTransportReader.java
similarity index 100%
rename from src/net/sf/briar/plugins/file/FileTransportReader.java
rename to briar-core/src/net/sf/briar/plugins/file/FileTransportReader.java
diff --git a/src/net/sf/briar/plugins/file/FileTransportWriter.java b/briar-core/src/net/sf/briar/plugins/file/FileTransportWriter.java
similarity index 100%
rename from src/net/sf/briar/plugins/file/FileTransportWriter.java
rename to briar-core/src/net/sf/briar/plugins/file/FileTransportWriter.java
diff --git a/src/net/sf/briar/plugins/file/LinuxRemovableDriveFinder.java b/briar-core/src/net/sf/briar/plugins/file/LinuxRemovableDriveFinder.java
similarity index 100%
rename from src/net/sf/briar/plugins/file/LinuxRemovableDriveFinder.java
rename to briar-core/src/net/sf/briar/plugins/file/LinuxRemovableDriveFinder.java
diff --git a/src/net/sf/briar/plugins/file/LinuxRemovableDriveMonitor.java b/briar-core/src/net/sf/briar/plugins/file/LinuxRemovableDriveMonitor.java
similarity index 100%
rename from src/net/sf/briar/plugins/file/LinuxRemovableDriveMonitor.java
rename to briar-core/src/net/sf/briar/plugins/file/LinuxRemovableDriveMonitor.java
diff --git a/src/net/sf/briar/plugins/file/MacRemovableDriveFinder.java b/briar-core/src/net/sf/briar/plugins/file/MacRemovableDriveFinder.java
similarity index 100%
rename from src/net/sf/briar/plugins/file/MacRemovableDriveFinder.java
rename to briar-core/src/net/sf/briar/plugins/file/MacRemovableDriveFinder.java
diff --git a/src/net/sf/briar/plugins/file/MacRemovableDriveMonitor.java b/briar-core/src/net/sf/briar/plugins/file/MacRemovableDriveMonitor.java
similarity index 100%
rename from src/net/sf/briar/plugins/file/MacRemovableDriveMonitor.java
rename to briar-core/src/net/sf/briar/plugins/file/MacRemovableDriveMonitor.java
diff --git a/src/net/sf/briar/plugins/file/PollingRemovableDriveMonitor.java b/briar-core/src/net/sf/briar/plugins/file/PollingRemovableDriveMonitor.java
similarity index 100%
rename from src/net/sf/briar/plugins/file/PollingRemovableDriveMonitor.java
rename to briar-core/src/net/sf/briar/plugins/file/PollingRemovableDriveMonitor.java
diff --git a/src/net/sf/briar/plugins/file/RemovableDriveFinder.java b/briar-core/src/net/sf/briar/plugins/file/RemovableDriveFinder.java
similarity index 100%
rename from src/net/sf/briar/plugins/file/RemovableDriveFinder.java
rename to briar-core/src/net/sf/briar/plugins/file/RemovableDriveFinder.java
diff --git a/src/net/sf/briar/plugins/file/RemovableDriveMonitor.java b/briar-core/src/net/sf/briar/plugins/file/RemovableDriveMonitor.java
similarity index 100%
rename from src/net/sf/briar/plugins/file/RemovableDriveMonitor.java
rename to briar-core/src/net/sf/briar/plugins/file/RemovableDriveMonitor.java
diff --git a/src/net/sf/briar/plugins/file/RemovableDrivePlugin.java b/briar-core/src/net/sf/briar/plugins/file/RemovableDrivePlugin.java
similarity index 100%
rename from src/net/sf/briar/plugins/file/RemovableDrivePlugin.java
rename to briar-core/src/net/sf/briar/plugins/file/RemovableDrivePlugin.java
diff --git a/src/net/sf/briar/plugins/file/RemovableDrivePluginFactory.java b/briar-core/src/net/sf/briar/plugins/file/RemovableDrivePluginFactory.java
similarity index 100%
rename from src/net/sf/briar/plugins/file/RemovableDrivePluginFactory.java
rename to briar-core/src/net/sf/briar/plugins/file/RemovableDrivePluginFactory.java
diff --git a/src/net/sf/briar/plugins/file/UnixRemovableDriveFinder.java b/briar-core/src/net/sf/briar/plugins/file/UnixRemovableDriveFinder.java
similarity index 100%
rename from src/net/sf/briar/plugins/file/UnixRemovableDriveFinder.java
rename to briar-core/src/net/sf/briar/plugins/file/UnixRemovableDriveFinder.java
diff --git a/src/net/sf/briar/plugins/file/UnixRemovableDriveMonitor.java b/briar-core/src/net/sf/briar/plugins/file/UnixRemovableDriveMonitor.java
similarity index 100%
rename from src/net/sf/briar/plugins/file/UnixRemovableDriveMonitor.java
rename to briar-core/src/net/sf/briar/plugins/file/UnixRemovableDriveMonitor.java
diff --git a/src/net/sf/briar/plugins/file/WindowsRemovableDriveFinder.java b/briar-core/src/net/sf/briar/plugins/file/WindowsRemovableDriveFinder.java
similarity index 100%
rename from src/net/sf/briar/plugins/file/WindowsRemovableDriveFinder.java
rename to briar-core/src/net/sf/briar/plugins/file/WindowsRemovableDriveFinder.java
diff --git a/src/net/sf/briar/plugins/modem/Ack.java b/briar-core/src/net/sf/briar/plugins/modem/Ack.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/Ack.java
rename to briar-core/src/net/sf/briar/plugins/modem/Ack.java
diff --git a/src/net/sf/briar/plugins/modem/Crc32.java b/briar-core/src/net/sf/briar/plugins/modem/Crc32.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/Crc32.java
rename to briar-core/src/net/sf/briar/plugins/modem/Crc32.java
diff --git a/src/net/sf/briar/plugins/modem/Data.java b/briar-core/src/net/sf/briar/plugins/modem/Data.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/Data.java
rename to briar-core/src/net/sf/briar/plugins/modem/Data.java
diff --git a/src/net/sf/briar/plugins/modem/Frame.java b/briar-core/src/net/sf/briar/plugins/modem/Frame.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/Frame.java
rename to briar-core/src/net/sf/briar/plugins/modem/Frame.java
diff --git a/src/net/sf/briar/plugins/modem/Modem.java b/briar-core/src/net/sf/briar/plugins/modem/Modem.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/Modem.java
rename to briar-core/src/net/sf/briar/plugins/modem/Modem.java
diff --git a/src/net/sf/briar/plugins/modem/ModemFactory.java b/briar-core/src/net/sf/briar/plugins/modem/ModemFactory.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/ModemFactory.java
rename to briar-core/src/net/sf/briar/plugins/modem/ModemFactory.java
diff --git a/src/net/sf/briar/plugins/modem/ModemFactoryImpl.java b/briar-core/src/net/sf/briar/plugins/modem/ModemFactoryImpl.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/ModemFactoryImpl.java
rename to briar-core/src/net/sf/briar/plugins/modem/ModemFactoryImpl.java
diff --git a/src/net/sf/briar/plugins/modem/ModemImpl.java b/briar-core/src/net/sf/briar/plugins/modem/ModemImpl.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/ModemImpl.java
rename to briar-core/src/net/sf/briar/plugins/modem/ModemImpl.java
diff --git a/src/net/sf/briar/plugins/modem/ModemPlugin.java b/briar-core/src/net/sf/briar/plugins/modem/ModemPlugin.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/ModemPlugin.java
rename to briar-core/src/net/sf/briar/plugins/modem/ModemPlugin.java
diff --git a/src/net/sf/briar/plugins/modem/ModemPluginFactory.java b/briar-core/src/net/sf/briar/plugins/modem/ModemPluginFactory.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/ModemPluginFactory.java
rename to briar-core/src/net/sf/briar/plugins/modem/ModemPluginFactory.java
diff --git a/src/net/sf/briar/plugins/modem/ReadHandler.java b/briar-core/src/net/sf/briar/plugins/modem/ReadHandler.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/ReadHandler.java
rename to briar-core/src/net/sf/briar/plugins/modem/ReadHandler.java
diff --git a/src/net/sf/briar/plugins/modem/Receiver.java b/briar-core/src/net/sf/briar/plugins/modem/Receiver.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/Receiver.java
rename to briar-core/src/net/sf/briar/plugins/modem/Receiver.java
diff --git a/src/net/sf/briar/plugins/modem/ReceiverInputStream.java b/briar-core/src/net/sf/briar/plugins/modem/ReceiverInputStream.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/ReceiverInputStream.java
rename to briar-core/src/net/sf/briar/plugins/modem/ReceiverInputStream.java
diff --git a/src/net/sf/briar/plugins/modem/ReliabilityLayer.java b/briar-core/src/net/sf/briar/plugins/modem/ReliabilityLayer.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/ReliabilityLayer.java
rename to briar-core/src/net/sf/briar/plugins/modem/ReliabilityLayer.java
diff --git a/src/net/sf/briar/plugins/modem/Sender.java b/briar-core/src/net/sf/briar/plugins/modem/Sender.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/Sender.java
rename to briar-core/src/net/sf/briar/plugins/modem/Sender.java
diff --git a/src/net/sf/briar/plugins/modem/SenderOutputStream.java b/briar-core/src/net/sf/briar/plugins/modem/SenderOutputStream.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/SenderOutputStream.java
rename to briar-core/src/net/sf/briar/plugins/modem/SenderOutputStream.java
diff --git a/src/net/sf/briar/plugins/modem/SlipDecoder.java b/briar-core/src/net/sf/briar/plugins/modem/SlipDecoder.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/SlipDecoder.java
rename to briar-core/src/net/sf/briar/plugins/modem/SlipDecoder.java
diff --git a/src/net/sf/briar/plugins/modem/SlipEncoder.java b/briar-core/src/net/sf/briar/plugins/modem/SlipEncoder.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/SlipEncoder.java
rename to briar-core/src/net/sf/briar/plugins/modem/SlipEncoder.java
diff --git a/src/net/sf/briar/plugins/modem/WriteHandler.java b/briar-core/src/net/sf/briar/plugins/modem/WriteHandler.java
similarity index 100%
rename from src/net/sf/briar/plugins/modem/WriteHandler.java
rename to briar-core/src/net/sf/briar/plugins/modem/WriteHandler.java
diff --git a/src/net/sf/briar/plugins/tcp/LanTcpPlugin.java b/briar-core/src/net/sf/briar/plugins/tcp/LanTcpPlugin.java
similarity index 100%
rename from src/net/sf/briar/plugins/tcp/LanTcpPlugin.java
rename to briar-core/src/net/sf/briar/plugins/tcp/LanTcpPlugin.java
diff --git a/src/net/sf/briar/plugins/tcp/LanTcpPluginFactory.java b/briar-core/src/net/sf/briar/plugins/tcp/LanTcpPluginFactory.java
similarity index 100%
rename from src/net/sf/briar/plugins/tcp/LanTcpPluginFactory.java
rename to briar-core/src/net/sf/briar/plugins/tcp/LanTcpPluginFactory.java
diff --git a/src/net/sf/briar/plugins/tcp/MappingResult.java b/briar-core/src/net/sf/briar/plugins/tcp/MappingResult.java
similarity index 100%
rename from src/net/sf/briar/plugins/tcp/MappingResult.java
rename to briar-core/src/net/sf/briar/plugins/tcp/MappingResult.java
diff --git a/src/net/sf/briar/plugins/tcp/PortMapper.java b/briar-core/src/net/sf/briar/plugins/tcp/PortMapper.java
similarity index 100%
rename from src/net/sf/briar/plugins/tcp/PortMapper.java
rename to briar-core/src/net/sf/briar/plugins/tcp/PortMapper.java
diff --git a/src/net/sf/briar/plugins/tcp/PortMapperImpl.java b/briar-core/src/net/sf/briar/plugins/tcp/PortMapperImpl.java
similarity index 100%
rename from src/net/sf/briar/plugins/tcp/PortMapperImpl.java
rename to briar-core/src/net/sf/briar/plugins/tcp/PortMapperImpl.java
diff --git a/src/net/sf/briar/plugins/tcp/TcpPlugin.java b/briar-core/src/net/sf/briar/plugins/tcp/TcpPlugin.java
similarity index 100%
rename from src/net/sf/briar/plugins/tcp/TcpPlugin.java
rename to briar-core/src/net/sf/briar/plugins/tcp/TcpPlugin.java
diff --git a/src/net/sf/briar/plugins/tcp/TcpTransportConnection.java b/briar-core/src/net/sf/briar/plugins/tcp/TcpTransportConnection.java
similarity index 100%
rename from src/net/sf/briar/plugins/tcp/TcpTransportConnection.java
rename to briar-core/src/net/sf/briar/plugins/tcp/TcpTransportConnection.java
diff --git a/src/net/sf/briar/plugins/tcp/WanTcpPlugin.java b/briar-core/src/net/sf/briar/plugins/tcp/WanTcpPlugin.java
similarity index 100%
rename from src/net/sf/briar/plugins/tcp/WanTcpPlugin.java
rename to briar-core/src/net/sf/briar/plugins/tcp/WanTcpPlugin.java
diff --git a/src/net/sf/briar/plugins/tcp/WanTcpPluginFactory.java b/briar-core/src/net/sf/briar/plugins/tcp/WanTcpPluginFactory.java
similarity index 100%
rename from src/net/sf/briar/plugins/tcp/WanTcpPluginFactory.java
rename to briar-core/src/net/sf/briar/plugins/tcp/WanTcpPluginFactory.java
diff --git a/src/net/sf/briar/plugins/tor/TorPlugin.java b/briar-core/src/net/sf/briar/plugins/tor/TorPlugin.java
similarity index 100%
rename from src/net/sf/briar/plugins/tor/TorPlugin.java
rename to briar-core/src/net/sf/briar/plugins/tor/TorPlugin.java
diff --git a/src/net/sf/briar/plugins/tor/TorPluginFactory.java b/briar-core/src/net/sf/briar/plugins/tor/TorPluginFactory.java
similarity index 100%
rename from src/net/sf/briar/plugins/tor/TorPluginFactory.java
rename to briar-core/src/net/sf/briar/plugins/tor/TorPluginFactory.java
diff --git a/src/net/sf/briar/plugins/tor/TorTransportConnection.java b/briar-core/src/net/sf/briar/plugins/tor/TorTransportConnection.java
similarity index 100%
rename from src/net/sf/briar/plugins/tor/TorTransportConnection.java
rename to briar-core/src/net/sf/briar/plugins/tor/TorTransportConnection.java
diff --git a/src/net/sf/briar/protocol/AckImpl.java b/briar-core/src/net/sf/briar/protocol/AckImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/AckImpl.java
rename to briar-core/src/net/sf/briar/protocol/AckImpl.java
diff --git a/src/net/sf/briar/protocol/AckReader.java b/briar-core/src/net/sf/briar/protocol/AckReader.java
similarity index 100%
rename from src/net/sf/briar/protocol/AckReader.java
rename to briar-core/src/net/sf/briar/protocol/AckReader.java
diff --git a/src/net/sf/briar/protocol/AuthorFactoryImpl.java b/briar-core/src/net/sf/briar/protocol/AuthorFactoryImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/AuthorFactoryImpl.java
rename to briar-core/src/net/sf/briar/protocol/AuthorFactoryImpl.java
diff --git a/src/net/sf/briar/protocol/AuthorImpl.java b/briar-core/src/net/sf/briar/protocol/AuthorImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/AuthorImpl.java
rename to briar-core/src/net/sf/briar/protocol/AuthorImpl.java
diff --git a/src/net/sf/briar/protocol/AuthorReader.java b/briar-core/src/net/sf/briar/protocol/AuthorReader.java
similarity index 100%
rename from src/net/sf/briar/protocol/AuthorReader.java
rename to briar-core/src/net/sf/briar/protocol/AuthorReader.java
diff --git a/src/net/sf/briar/protocol/BatchImpl.java b/briar-core/src/net/sf/briar/protocol/BatchImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/BatchImpl.java
rename to briar-core/src/net/sf/briar/protocol/BatchImpl.java
diff --git a/src/net/sf/briar/protocol/BatchReader.java b/briar-core/src/net/sf/briar/protocol/BatchReader.java
similarity index 100%
rename from src/net/sf/briar/protocol/BatchReader.java
rename to briar-core/src/net/sf/briar/protocol/BatchReader.java
diff --git a/src/net/sf/briar/protocol/GroupFactoryImpl.java b/briar-core/src/net/sf/briar/protocol/GroupFactoryImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/GroupFactoryImpl.java
rename to briar-core/src/net/sf/briar/protocol/GroupFactoryImpl.java
diff --git a/src/net/sf/briar/protocol/GroupImpl.java b/briar-core/src/net/sf/briar/protocol/GroupImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/GroupImpl.java
rename to briar-core/src/net/sf/briar/protocol/GroupImpl.java
diff --git a/src/net/sf/briar/protocol/GroupReader.java b/briar-core/src/net/sf/briar/protocol/GroupReader.java
similarity index 100%
rename from src/net/sf/briar/protocol/GroupReader.java
rename to briar-core/src/net/sf/briar/protocol/GroupReader.java
diff --git a/src/net/sf/briar/protocol/MessageFactoryImpl.java b/briar-core/src/net/sf/briar/protocol/MessageFactoryImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/MessageFactoryImpl.java
rename to briar-core/src/net/sf/briar/protocol/MessageFactoryImpl.java
diff --git a/src/net/sf/briar/protocol/MessageImpl.java b/briar-core/src/net/sf/briar/protocol/MessageImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/MessageImpl.java
rename to briar-core/src/net/sf/briar/protocol/MessageImpl.java
diff --git a/src/net/sf/briar/protocol/MessageReader.java b/briar-core/src/net/sf/briar/protocol/MessageReader.java
similarity index 100%
rename from src/net/sf/briar/protocol/MessageReader.java
rename to briar-core/src/net/sf/briar/protocol/MessageReader.java
diff --git a/src/net/sf/briar/protocol/OfferImpl.java b/briar-core/src/net/sf/briar/protocol/OfferImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/OfferImpl.java
rename to briar-core/src/net/sf/briar/protocol/OfferImpl.java
diff --git a/src/net/sf/briar/protocol/OfferReader.java b/briar-core/src/net/sf/briar/protocol/OfferReader.java
similarity index 100%
rename from src/net/sf/briar/protocol/OfferReader.java
rename to briar-core/src/net/sf/briar/protocol/OfferReader.java
diff --git a/src/net/sf/briar/protocol/PacketFactoryImpl.java b/briar-core/src/net/sf/briar/protocol/PacketFactoryImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/PacketFactoryImpl.java
rename to briar-core/src/net/sf/briar/protocol/PacketFactoryImpl.java
diff --git a/src/net/sf/briar/protocol/ProtocolModule.java b/briar-core/src/net/sf/briar/protocol/ProtocolModule.java
similarity index 100%
rename from src/net/sf/briar/protocol/ProtocolModule.java
rename to briar-core/src/net/sf/briar/protocol/ProtocolModule.java
diff --git a/src/net/sf/briar/protocol/ProtocolReaderFactoryImpl.java b/briar-core/src/net/sf/briar/protocol/ProtocolReaderFactoryImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/ProtocolReaderFactoryImpl.java
rename to briar-core/src/net/sf/briar/protocol/ProtocolReaderFactoryImpl.java
diff --git a/src/net/sf/briar/protocol/ProtocolReaderImpl.java b/briar-core/src/net/sf/briar/protocol/ProtocolReaderImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/ProtocolReaderImpl.java
rename to briar-core/src/net/sf/briar/protocol/ProtocolReaderImpl.java
diff --git a/src/net/sf/briar/protocol/ProtocolWriterFactoryImpl.java b/briar-core/src/net/sf/briar/protocol/ProtocolWriterFactoryImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/ProtocolWriterFactoryImpl.java
rename to briar-core/src/net/sf/briar/protocol/ProtocolWriterFactoryImpl.java
diff --git a/src/net/sf/briar/protocol/ProtocolWriterImpl.java b/briar-core/src/net/sf/briar/protocol/ProtocolWriterImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/ProtocolWriterImpl.java
rename to briar-core/src/net/sf/briar/protocol/ProtocolWriterImpl.java
diff --git a/src/net/sf/briar/protocol/RawBatchImpl.java b/briar-core/src/net/sf/briar/protocol/RawBatchImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/RawBatchImpl.java
rename to briar-core/src/net/sf/briar/protocol/RawBatchImpl.java
diff --git a/src/net/sf/briar/protocol/RequestImpl.java b/briar-core/src/net/sf/briar/protocol/RequestImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/RequestImpl.java
rename to briar-core/src/net/sf/briar/protocol/RequestImpl.java
diff --git a/src/net/sf/briar/protocol/RequestReader.java b/briar-core/src/net/sf/briar/protocol/RequestReader.java
similarity index 100%
rename from src/net/sf/briar/protocol/RequestReader.java
rename to briar-core/src/net/sf/briar/protocol/RequestReader.java
diff --git a/src/net/sf/briar/protocol/SubscriptionUpdateImpl.java b/briar-core/src/net/sf/briar/protocol/SubscriptionUpdateImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/SubscriptionUpdateImpl.java
rename to briar-core/src/net/sf/briar/protocol/SubscriptionUpdateImpl.java
diff --git a/src/net/sf/briar/protocol/SubscriptionUpdateReader.java b/briar-core/src/net/sf/briar/protocol/SubscriptionUpdateReader.java
similarity index 100%
rename from src/net/sf/briar/protocol/SubscriptionUpdateReader.java
rename to briar-core/src/net/sf/briar/protocol/SubscriptionUpdateReader.java
diff --git a/src/net/sf/briar/protocol/TransportUpdateImpl.java b/briar-core/src/net/sf/briar/protocol/TransportUpdateImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/TransportUpdateImpl.java
rename to briar-core/src/net/sf/briar/protocol/TransportUpdateImpl.java
diff --git a/src/net/sf/briar/protocol/TransportUpdateReader.java b/briar-core/src/net/sf/briar/protocol/TransportUpdateReader.java
similarity index 100%
rename from src/net/sf/briar/protocol/TransportUpdateReader.java
rename to briar-core/src/net/sf/briar/protocol/TransportUpdateReader.java
diff --git a/src/net/sf/briar/protocol/UnverifiedBatchFactory.java b/briar-core/src/net/sf/briar/protocol/UnverifiedBatchFactory.java
similarity index 100%
rename from src/net/sf/briar/protocol/UnverifiedBatchFactory.java
rename to briar-core/src/net/sf/briar/protocol/UnverifiedBatchFactory.java
diff --git a/src/net/sf/briar/protocol/UnverifiedBatchFactoryImpl.java b/briar-core/src/net/sf/briar/protocol/UnverifiedBatchFactoryImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/UnverifiedBatchFactoryImpl.java
rename to briar-core/src/net/sf/briar/protocol/UnverifiedBatchFactoryImpl.java
diff --git a/src/net/sf/briar/protocol/UnverifiedBatchImpl.java b/briar-core/src/net/sf/briar/protocol/UnverifiedBatchImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/UnverifiedBatchImpl.java
rename to briar-core/src/net/sf/briar/protocol/UnverifiedBatchImpl.java
diff --git a/src/net/sf/briar/protocol/UnverifiedMessage.java b/briar-core/src/net/sf/briar/protocol/UnverifiedMessage.java
similarity index 100%
rename from src/net/sf/briar/protocol/UnverifiedMessage.java
rename to briar-core/src/net/sf/briar/protocol/UnverifiedMessage.java
diff --git a/src/net/sf/briar/protocol/UnverifiedMessageImpl.java b/briar-core/src/net/sf/briar/protocol/UnverifiedMessageImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/UnverifiedMessageImpl.java
rename to briar-core/src/net/sf/briar/protocol/UnverifiedMessageImpl.java
diff --git a/src/net/sf/briar/protocol/duplex/DuplexConnection.java b/briar-core/src/net/sf/briar/protocol/duplex/DuplexConnection.java
similarity index 100%
rename from src/net/sf/briar/protocol/duplex/DuplexConnection.java
rename to briar-core/src/net/sf/briar/protocol/duplex/DuplexConnection.java
diff --git a/src/net/sf/briar/protocol/duplex/DuplexConnectionFactoryImpl.java b/briar-core/src/net/sf/briar/protocol/duplex/DuplexConnectionFactoryImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/duplex/DuplexConnectionFactoryImpl.java
rename to briar-core/src/net/sf/briar/protocol/duplex/DuplexConnectionFactoryImpl.java
diff --git a/src/net/sf/briar/protocol/duplex/DuplexProtocolModule.java b/briar-core/src/net/sf/briar/protocol/duplex/DuplexProtocolModule.java
similarity index 100%
rename from src/net/sf/briar/protocol/duplex/DuplexProtocolModule.java
rename to briar-core/src/net/sf/briar/protocol/duplex/DuplexProtocolModule.java
diff --git a/src/net/sf/briar/protocol/duplex/IncomingDuplexConnection.java b/briar-core/src/net/sf/briar/protocol/duplex/IncomingDuplexConnection.java
similarity index 100%
rename from src/net/sf/briar/protocol/duplex/IncomingDuplexConnection.java
rename to briar-core/src/net/sf/briar/protocol/duplex/IncomingDuplexConnection.java
diff --git a/src/net/sf/briar/protocol/duplex/OutgoingDuplexConnection.java b/briar-core/src/net/sf/briar/protocol/duplex/OutgoingDuplexConnection.java
similarity index 100%
rename from src/net/sf/briar/protocol/duplex/OutgoingDuplexConnection.java
rename to briar-core/src/net/sf/briar/protocol/duplex/OutgoingDuplexConnection.java
diff --git a/src/net/sf/briar/protocol/simplex/IncomingSimplexConnection.java b/briar-core/src/net/sf/briar/protocol/simplex/IncomingSimplexConnection.java
similarity index 100%
rename from src/net/sf/briar/protocol/simplex/IncomingSimplexConnection.java
rename to briar-core/src/net/sf/briar/protocol/simplex/IncomingSimplexConnection.java
diff --git a/src/net/sf/briar/protocol/simplex/OutgoingSimplexConnection.java b/briar-core/src/net/sf/briar/protocol/simplex/OutgoingSimplexConnection.java
similarity index 100%
rename from src/net/sf/briar/protocol/simplex/OutgoingSimplexConnection.java
rename to briar-core/src/net/sf/briar/protocol/simplex/OutgoingSimplexConnection.java
diff --git a/src/net/sf/briar/protocol/simplex/SimplexConnectionFactoryImpl.java b/briar-core/src/net/sf/briar/protocol/simplex/SimplexConnectionFactoryImpl.java
similarity index 100%
rename from src/net/sf/briar/protocol/simplex/SimplexConnectionFactoryImpl.java
rename to briar-core/src/net/sf/briar/protocol/simplex/SimplexConnectionFactoryImpl.java
diff --git a/src/net/sf/briar/protocol/simplex/SimplexProtocolModule.java b/briar-core/src/net/sf/briar/protocol/simplex/SimplexProtocolModule.java
similarity index 100%
rename from src/net/sf/briar/protocol/simplex/SimplexProtocolModule.java
rename to briar-core/src/net/sf/briar/protocol/simplex/SimplexProtocolModule.java
diff --git a/src/net/sf/briar/serial/ReaderFactoryImpl.java b/briar-core/src/net/sf/briar/serial/ReaderFactoryImpl.java
similarity index 100%
rename from src/net/sf/briar/serial/ReaderFactoryImpl.java
rename to briar-core/src/net/sf/briar/serial/ReaderFactoryImpl.java
diff --git a/src/net/sf/briar/serial/ReaderImpl.java b/briar-core/src/net/sf/briar/serial/ReaderImpl.java
similarity index 100%
rename from src/net/sf/briar/serial/ReaderImpl.java
rename to briar-core/src/net/sf/briar/serial/ReaderImpl.java
diff --git a/src/net/sf/briar/serial/SerialComponentImpl.java b/briar-core/src/net/sf/briar/serial/SerialComponentImpl.java
similarity index 100%
rename from src/net/sf/briar/serial/SerialComponentImpl.java
rename to briar-core/src/net/sf/briar/serial/SerialComponentImpl.java
diff --git a/src/net/sf/briar/serial/SerialModule.java b/briar-core/src/net/sf/briar/serial/SerialModule.java
similarity index 100%
rename from src/net/sf/briar/serial/SerialModule.java
rename to briar-core/src/net/sf/briar/serial/SerialModule.java
diff --git a/src/net/sf/briar/serial/Tag.java b/briar-core/src/net/sf/briar/serial/Tag.java
similarity index 100%
rename from src/net/sf/briar/serial/Tag.java
rename to briar-core/src/net/sf/briar/serial/Tag.java
diff --git a/src/net/sf/briar/serial/WriterFactoryImpl.java b/briar-core/src/net/sf/briar/serial/WriterFactoryImpl.java
similarity index 100%
rename from src/net/sf/briar/serial/WriterFactoryImpl.java
rename to briar-core/src/net/sf/briar/serial/WriterFactoryImpl.java
diff --git a/src/net/sf/briar/serial/WriterImpl.java b/briar-core/src/net/sf/briar/serial/WriterImpl.java
similarity index 100%
rename from src/net/sf/briar/serial/WriterImpl.java
rename to briar-core/src/net/sf/briar/serial/WriterImpl.java
diff --git a/src/net/sf/briar/transport/ConnectionDispatcherImpl.java b/briar-core/src/net/sf/briar/transport/ConnectionDispatcherImpl.java
similarity index 100%
rename from src/net/sf/briar/transport/ConnectionDispatcherImpl.java
rename to briar-core/src/net/sf/briar/transport/ConnectionDispatcherImpl.java
diff --git a/src/net/sf/briar/transport/ConnectionReaderFactoryImpl.java b/briar-core/src/net/sf/briar/transport/ConnectionReaderFactoryImpl.java
similarity index 100%
rename from src/net/sf/briar/transport/ConnectionReaderFactoryImpl.java
rename to briar-core/src/net/sf/briar/transport/ConnectionReaderFactoryImpl.java
diff --git a/src/net/sf/briar/transport/ConnectionReaderImpl.java b/briar-core/src/net/sf/briar/transport/ConnectionReaderImpl.java
similarity index 100%
rename from src/net/sf/briar/transport/ConnectionReaderImpl.java
rename to briar-core/src/net/sf/briar/transport/ConnectionReaderImpl.java
diff --git a/src/net/sf/briar/transport/ConnectionRecogniserImpl.java b/briar-core/src/net/sf/briar/transport/ConnectionRecogniserImpl.java
similarity index 100%
rename from src/net/sf/briar/transport/ConnectionRecogniserImpl.java
rename to briar-core/src/net/sf/briar/transport/ConnectionRecogniserImpl.java
diff --git a/src/net/sf/briar/transport/ConnectionRegistryImpl.java b/briar-core/src/net/sf/briar/transport/ConnectionRegistryImpl.java
similarity index 100%
rename from src/net/sf/briar/transport/ConnectionRegistryImpl.java
rename to briar-core/src/net/sf/briar/transport/ConnectionRegistryImpl.java
diff --git a/src/net/sf/briar/transport/ConnectionWindow.java b/briar-core/src/net/sf/briar/transport/ConnectionWindow.java
similarity index 100%
rename from src/net/sf/briar/transport/ConnectionWindow.java
rename to briar-core/src/net/sf/briar/transport/ConnectionWindow.java
diff --git a/src/net/sf/briar/transport/ConnectionWriterFactoryImpl.java b/briar-core/src/net/sf/briar/transport/ConnectionWriterFactoryImpl.java
similarity index 100%
rename from src/net/sf/briar/transport/ConnectionWriterFactoryImpl.java
rename to briar-core/src/net/sf/briar/transport/ConnectionWriterFactoryImpl.java
diff --git a/src/net/sf/briar/transport/ConnectionWriterImpl.java b/briar-core/src/net/sf/briar/transport/ConnectionWriterImpl.java
similarity index 100%
rename from src/net/sf/briar/transport/ConnectionWriterImpl.java
rename to briar-core/src/net/sf/briar/transport/ConnectionWriterImpl.java
diff --git a/src/net/sf/briar/transport/FrameEncoder.java b/briar-core/src/net/sf/briar/transport/FrameEncoder.java
similarity index 100%
rename from src/net/sf/briar/transport/FrameEncoder.java
rename to briar-core/src/net/sf/briar/transport/FrameEncoder.java
diff --git a/src/net/sf/briar/transport/FrameReader.java b/briar-core/src/net/sf/briar/transport/FrameReader.java
similarity index 100%
rename from src/net/sf/briar/transport/FrameReader.java
rename to briar-core/src/net/sf/briar/transport/FrameReader.java
diff --git a/src/net/sf/briar/transport/FrameWriter.java b/briar-core/src/net/sf/briar/transport/FrameWriter.java
similarity index 100%
rename from src/net/sf/briar/transport/FrameWriter.java
rename to briar-core/src/net/sf/briar/transport/FrameWriter.java
diff --git a/src/net/sf/briar/transport/IncomingEncryptionLayer.java b/briar-core/src/net/sf/briar/transport/IncomingEncryptionLayer.java
similarity index 100%
rename from src/net/sf/briar/transport/IncomingEncryptionLayer.java
rename to briar-core/src/net/sf/briar/transport/IncomingEncryptionLayer.java
diff --git a/src/net/sf/briar/transport/KeyManagerImpl.java b/briar-core/src/net/sf/briar/transport/KeyManagerImpl.java
similarity index 100%
rename from src/net/sf/briar/transport/KeyManagerImpl.java
rename to briar-core/src/net/sf/briar/transport/KeyManagerImpl.java
diff --git a/src/net/sf/briar/transport/OutgoingEncryptionLayer.java b/briar-core/src/net/sf/briar/transport/OutgoingEncryptionLayer.java
similarity index 100%
rename from src/net/sf/briar/transport/OutgoingEncryptionLayer.java
rename to briar-core/src/net/sf/briar/transport/OutgoingEncryptionLayer.java
diff --git a/src/net/sf/briar/transport/TransportConnectionRecogniser.java b/briar-core/src/net/sf/briar/transport/TransportConnectionRecogniser.java
similarity index 100%
rename from src/net/sf/briar/transport/TransportConnectionRecogniser.java
rename to briar-core/src/net/sf/briar/transport/TransportConnectionRecogniser.java
diff --git a/src/net/sf/briar/transport/TransportModule.java b/briar-core/src/net/sf/briar/transport/TransportModule.java
similarity index 100%
rename from src/net/sf/briar/transport/TransportModule.java
rename to briar-core/src/net/sf/briar/transport/TransportModule.java
diff --git a/src/net/sf/briar/util/BoundedExecutor.java b/briar-core/src/net/sf/briar/util/BoundedExecutor.java
similarity index 100%
rename from src/net/sf/briar/util/BoundedExecutor.java
rename to briar-core/src/net/sf/briar/util/BoundedExecutor.java
diff --git a/src/net/sf/briar/util/ByteUtils.java b/briar-core/src/net/sf/briar/util/ByteUtils.java
similarity index 100%
rename from src/net/sf/briar/util/ByteUtils.java
rename to briar-core/src/net/sf/briar/util/ByteUtils.java
diff --git a/src/net/sf/briar/util/FileUtils.java b/briar-core/src/net/sf/briar/util/FileUtils.java
similarity index 100%
rename from src/net/sf/briar/util/FileUtils.java
rename to briar-core/src/net/sf/briar/util/FileUtils.java
diff --git a/src/net/sf/briar/util/OsUtils.java b/briar-core/src/net/sf/briar/util/OsUtils.java
similarity index 100%
rename from src/net/sf/briar/util/OsUtils.java
rename to briar-core/src/net/sf/briar/util/OsUtils.java
diff --git a/src/net/sf/briar/util/StringUtils.java b/briar-core/src/net/sf/briar/util/StringUtils.java
similarity index 100%
rename from src/net/sf/briar/util/StringUtils.java
rename to briar-core/src/net/sf/briar/util/StringUtils.java
diff --git a/src/net/sf/briar/util/ZipUtils.java b/briar-core/src/net/sf/briar/util/ZipUtils.java
similarity index 100%
rename from src/net/sf/briar/util/ZipUtils.java
rename to briar-core/src/net/sf/briar/util/ZipUtils.java
diff --git a/src/.gitignore b/src/.gitignore
deleted file mode 100644
index 378eac25d3..0000000000
--- a/src/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-build
-- 
GitLab