diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 9a7edc30d4ec569a91d129c6055803a3aa90ab7e..9f9cae2f65a52b4c090b88137d67e83c4fb88594 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -18,7 +18,7 @@ android {
   }
 
   composeOptions {
-    val androidxComposeVersion: String by project.extra
+    val androidxComposeVersion: String by project
     kotlinCompilerExtensionVersion = androidxComposeVersion
   }
 
@@ -32,27 +32,27 @@ kapt {
 }
 
 dependencies {
-  val androidxCoreVersion: String by project.extra
+  val androidxCoreVersion: String by project
   implementation("androidx.core", "core-ktx", androidxCoreVersion)
 
-  val androidxAppcompatVersion: String by project.extra
+  val androidxAppcompatVersion: String by project
   implementation("androidx.appcompat", "appcompat", androidxAppcompatVersion)
 
-  val mdcVersion: String by project.extra
+  val mdcVersion: String by project
   implementation("com.google.android.material", "material", mdcVersion)
 
-  val androidxComposeVersion: String by project.extra
+  val androidxComposeVersion: String by project
   implementation("androidx.compose.ui", "ui", androidxComposeVersion)
   implementation("androidx.compose.material", "material", androidxComposeVersion)
   implementation("androidx.compose.ui", "ui-tooling", androidxComposeVersion)
 
-  val androidxLifecycleVersion: String by project.extra
+  val androidxLifecycleVersion: String by project
   implementation("androidx.lifecycle", "lifecycle-runtime-ktx", androidxLifecycleVersion)
 
-  val androidxMultidexVersion: String by project.extra
+  val androidxMultidexVersion: String by project
   implementation("androidx.multidex", "multidex", androidxMultidexVersion)
 
-  val daggerHiltVersion: String by project.extra
+  val daggerHiltVersion: String by project
   implementation("com.google.dagger", "hilt-android", daggerHiltVersion)
   annotationProcessor("com.google.dagger", "hilt-android-compiler", daggerHiltVersion)
   testImplementation("com.google.dagger", "hilt-android-testing", daggerHiltVersion)
@@ -67,7 +67,7 @@ dependencies {
   implementation("io.coil-kt", "coil", "1.1.1")
   implementation("dev.chrisbanes.accompanist", "accompanist-coil", "0.5.0")
 
-  val junit4Version: String by project.extra
+  val junit4Version: String by project
   testImplementation("junit", "junit", junit4Version)
   androidTestImplementation("androidx.test.ext", "junit", "1.1.2")
   androidTestImplementation("androidx.test.espresso", "espresso-core", "3.3.0")
diff --git a/app/src/androidTest/java/de/kuschku/quasseldroid/ExampleInstrumentedTest.kt b/app/src/androidTest/java/de/kuschku/quasseldroid/ExampleInstrumentedTest.kt
deleted file mode 100644
index 18d842d7674be4d8c51bff34ec9ab802db30786f..0000000000000000000000000000000000000000
--- a/app/src/androidTest/java/de/kuschku/quasseldroid/ExampleInstrumentedTest.kt
+++ /dev/null
@@ -1,22 +0,0 @@
-package de.kuschku.quasseldroid
-
-import androidx.test.ext.junit.runners.AndroidJUnit4
-import androidx.test.platform.app.InstrumentationRegistry
-import org.junit.Assert.assertEquals
-import org.junit.Test
-import org.junit.runner.RunWith
-
-/**
- * Instrumented test, which will execute on an Android device.
- *
- * See [testing documentation](http://d.android.com/tools/testing).
- */
-@RunWith(AndroidJUnit4::class)
-class ExampleInstrumentedTest {
-  @Test
-  fun useAppContext() {
-    // Context of the app under test.
-    val appContext = InstrumentationRegistry.getInstrumentation().targetContext
-    assertEquals("de.kuschku.quasseldroid", appContext.packageName)
-  }
-}
diff --git a/ci-containers/src/main/kotlin/de/kuschku/ci_containers/providedContainer.kt b/app/src/androidTest/java/info/quasseldroid/app/ExampleInstrumentedTest.kt
similarity index 52%
rename from ci-containers/src/main/kotlin/de/kuschku/ci_containers/providedContainer.kt
rename to app/src/androidTest/java/info/quasseldroid/app/ExampleInstrumentedTest.kt
index 219fb4d55592d6defde38d9098fe27008be11c73..d1c52c3fe62199d14efe0ed6f504bd3b751277d7 100644
--- a/ci-containers/src/main/kotlin/de/kuschku/ci_containers/providedContainer.kt
+++ b/app/src/androidTest/java/info/quasseldroid/app/ExampleInstrumentedTest.kt
@@ -17,17 +17,25 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.ci_containers
+package info.quasseldroid.app
 
-import java.net.InetSocketAddress
+import androidx.test.ext.junit.runners.AndroidJUnit4
+import androidx.test.platform.app.InstrumentationRegistry
+import org.junit.Assert.assertEquals
+import org.junit.Test
+import org.junit.runner.RunWith
 
-fun providedContainer(
-  envVariable: String,
-  f: () -> ProvidedContainer
-) = when {
-  !System.getenv(envVariable).isNullOrEmpty() -> {
-    val (host, port) = System.getenv(envVariable).split(":")
-    GitlabCiProvidedContainer(InetSocketAddress(host, port.toInt()))
+/**
+ * Instrumented test, which will execute on an Android device.
+ *
+ * See [testing documentation](http://d.android.com/tools/testing).
+ */
+@RunWith(AndroidJUnit4::class)
+class ExampleInstrumentedTest {
+  @Test
+  fun useAppContext() {
+    // Context of the app under test.
+    val appContext = InstrumentationRegistry.getInstrumentation().targetContext
+    assertEquals("info.quasseldroid.app", appContext.packageName)
   }
-  else -> f()
 }
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 598de7f6ce745c23f6f7916a2e7f57d043040283..b710a6b4f2c414cfe49568244b5f7f66af98d4cd 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-  package="de.kuschku.quasseldroid">
+  package="info.quasseldroid.app">
 
   <uses-feature
     android:name="android.hardware.type.pc"
@@ -13,7 +13,7 @@
   <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
 
   <application
-    android:name="de.kuschku.quasseldroid.QuasseldroidApplication"
+    android:name="info.quasseldroid.app.QuasseldroidApplication"
     android:allowBackup="true"
     android:fullBackupContent="@xml/backup_descriptor"
     android:icon="@mipmap/ic_launcher"
@@ -22,7 +22,7 @@
     android:supportsRtl="true"
     android:theme="@style/Theme.Quasseldroid">
     <activity
-      android:name=".MainActivity"
+      android:name="info.quasseldroid.app.MainActivity"
       android:label="@string/app_name"
       android:theme="@style/Theme.Quasseldroid.NoActionBar">
       <intent-filter>
diff --git a/app/src/main/java/de/kuschku/quasseldroid/MainActivity.kt b/app/src/main/java/info/quasseldroid/app/MainActivity.kt
similarity index 85%
rename from app/src/main/java/de/kuschku/quasseldroid/MainActivity.kt
rename to app/src/main/java/info/quasseldroid/app/MainActivity.kt
index e7ebf86632c08d7c9c6f7716ca13dc34b785dab2..7a5cf935150d90d6d800784887a301d6fccda642 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/MainActivity.kt
+++ b/app/src/main/java/info/quasseldroid/app/MainActivity.kt
@@ -1,4 +1,23 @@
-package de.kuschku.quasseldroid
+/*
+ * Quasseldroid - Quassel client for Android
+ *
+ * Copyright (c) 2021 Janne Mareike Koschinski
+ * Copyright (c) 2021 The Quassel Project
+ *
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 3 as published
+ * by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+package info.quasseldroid.app
 
 import android.os.Bundle
 import androidx.appcompat.app.AppCompatActivity
@@ -20,9 +39,9 @@ import androidx.compose.ui.text.font.FontFamily
 import androidx.compose.ui.tooling.preview.Preview
 import androidx.compose.ui.unit.dp
 import androidx.lifecycle.lifecycleScope
-import de.kuschku.quasseldroid.ui.theme.QuasseldroidTheme
-import de.kuschku.quasseldroid.ui.theme.shapes
-import de.kuschku.quasseldroid.ui.theme.typography
+import info.quasseldroid.app.theme.QuasseldroidTheme
+import info.quasseldroid.app.theme.shapes
+import info.quasseldroid.app.theme.typography
 import dev.chrisbanes.accompanist.coil.CoilImage
 import kotlinx.coroutines.delay
 import kotlinx.coroutines.flow.MutableStateFlow
diff --git a/app/src/main/java/de/kuschku/quasseldroid/QuasseldroidApplication.kt b/app/src/main/java/info/quasseldroid/app/QuasseldroidApplication.kt
similarity index 96%
rename from app/src/main/java/de/kuschku/quasseldroid/QuasseldroidApplication.kt
rename to app/src/main/java/info/quasseldroid/app/QuasseldroidApplication.kt
index d998491e4086dbb431d93fc3c7a0b32084e57c6f..43e54102ca9d7fb8d83e28341c97d3b8c991ac0e 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/QuasseldroidApplication.kt
+++ b/app/src/main/java/info/quasseldroid/app/QuasseldroidApplication.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.quasseldroid
+package info.quasseldroid.app
 
 import androidx.multidex.MultiDexApplication
 import dagger.hilt.android.HiltAndroidApp
diff --git a/app/src/main/java/de/kuschku/quasseldroid/ui/theme/Color.kt b/app/src/main/java/info/quasseldroid/app/theme/Color.kt
similarity index 66%
rename from app/src/main/java/de/kuschku/quasseldroid/ui/theme/Color.kt
rename to app/src/main/java/info/quasseldroid/app/theme/Color.kt
index 0826e9e5f4ba940a02c52db6d3282537ba6038ac..3e09405edbdbd4cadf5890f1a7cbe5a9e00a27b6 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/ui/theme/Color.kt
+++ b/app/src/main/java/info/quasseldroid/app/theme/Color.kt
@@ -1,8 +1,8 @@
-package de.kuschku.quasseldroid.ui.theme
+package info.quasseldroid.app.theme
 
 import androidx.compose.ui.graphics.Color
 
 val purple200 = Color(0xFFBB86FC)
 val purple500 = Color(0xFF6200EE)
 val purple700 = Color(0xFF3700B3)
-val teal200 = Color(0xFF03DAC5)
\ No newline at end of file
+val teal200 = Color(0xFF03DAC5)
diff --git a/app/src/main/java/de/kuschku/quasseldroid/ui/theme/Shape.kt b/app/src/main/java/info/quasseldroid/app/theme/Shape.kt
similarity index 86%
rename from app/src/main/java/de/kuschku/quasseldroid/ui/theme/Shape.kt
rename to app/src/main/java/info/quasseldroid/app/theme/Shape.kt
index 1e4b1f7da9028d51568f7c01cc4d1d582a63460b..c42049e2f71179f647f054829a90ddc0059ebd81 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/ui/theme/Shape.kt
+++ b/app/src/main/java/info/quasseldroid/app/theme/Shape.kt
@@ -1,4 +1,4 @@
-package de.kuschku.quasseldroid.ui.theme
+package info.quasseldroid.app.theme
 
 import androidx.compose.foundation.shape.RoundedCornerShape
 import androidx.compose.material.Shapes
diff --git a/app/src/main/java/de/kuschku/quasseldroid/ui/theme/Theme.kt b/app/src/main/java/info/quasseldroid/app/theme/Theme.kt
similarity index 96%
rename from app/src/main/java/de/kuschku/quasseldroid/ui/theme/Theme.kt
rename to app/src/main/java/info/quasseldroid/app/theme/Theme.kt
index e18dfe0d3f8621ea4253405b4d592171991934e7..c1eba54ccdc65f1de722081cd3d15d05ecd4ec02 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/ui/theme/Theme.kt
+++ b/app/src/main/java/info/quasseldroid/app/theme/Theme.kt
@@ -1,4 +1,4 @@
-package de.kuschku.quasseldroid.ui.theme
+package info.quasseldroid.app.theme
 
 import androidx.compose.foundation.isSystemInDarkTheme
 import androidx.compose.material.MaterialTheme
diff --git a/app/src/main/java/de/kuschku/quasseldroid/ui/theme/Type.kt b/app/src/main/java/info/quasseldroid/app/theme/Type.kt
similarity index 94%
rename from app/src/main/java/de/kuschku/quasseldroid/ui/theme/Type.kt
rename to app/src/main/java/info/quasseldroid/app/theme/Type.kt
index a2f199dd2100ff83cb1b861b6b21dfec642b42d4..92be9b63b1d1e05f235f6e1c8cecc41966a06e1f 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/ui/theme/Type.kt
+++ b/app/src/main/java/info/quasseldroid/app/theme/Type.kt
@@ -1,4 +1,4 @@
-package de.kuschku.quasseldroid.ui.theme
+package info.quasseldroid.app.theme
 
 import androidx.compose.material.Typography
 import androidx.compose.ui.text.TextStyle
diff --git a/bitflags/build.gradle.kts b/bitflags/build.gradle.kts
deleted file mode 100644
index 67af7e273f1daffaae4c8a9412dce32a3bee4954..0000000000000000000000000000000000000000
--- a/bitflags/build.gradle.kts
+++ /dev/null
@@ -1,30 +0,0 @@
-plugins {
-  kotlin("jvm")
-  id("jacoco")
-  id("de.kuschku.coverageconverter")
-}
-
-tasks.withType<Test> {
-  useJUnitPlatform()
-}
-
-tasks.getByName<JacocoReport>("jacocoTestReport") {
-  reports {
-    sourceDirectories.from(fileTree("src/main/kotlin"))
-    classDirectories.from(fileTree("build/classes"))
-    xml.destination = File("$buildDir/reports/jacoco/report.xml")
-    html.isEnabled = true
-    xml.isEnabled = true
-    csv.isEnabled = false
-  }
-}
-
-dependencies {
-  implementation(kotlin("stdlib"))
-
-  val junit5Version: String by project.extra
-  testImplementation("org.junit.jupiter", "junit-jupiter-api", junit5Version)
-  testRuntimeOnly("org.junit.jupiter", "junit-jupiter-engine", junit5Version)
-  val hamcrestVersion: String by project.extra
-  testImplementation("org.hamcrest", "hamcrest-library", hamcrestVersion)
-}
diff --git a/bitflags/src/main/kotlin/de/kuschku/bitflags/Flag.kt b/bitflags/src/main/kotlin/de/kuschku/bitflags/Flag.kt
deleted file mode 100644
index 1a89c5853ef0df1f59aa73cf01f41c63652f3264..0000000000000000000000000000000000000000
--- a/bitflags/src/main/kotlin/de/kuschku/bitflags/Flag.kt
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Quasseldroid - Quassel client for Android
- *
- * Copyright (c) 2021 Janne Mareike Koschinski
- * Copyright (c) 2021 The Quassel Project
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3 as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package de.kuschku.bitflags
-
-interface Flag<T> {
-  val value: T
-}
diff --git a/bitflags/src/main/kotlin/de/kuschku/bitflags/Flags.kt b/bitflags/src/main/kotlin/de/kuschku/bitflags/Flags.kt
deleted file mode 100644
index 716d905a59171de3bcff2a8da260b4f2aa57fa96..0000000000000000000000000000000000000000
--- a/bitflags/src/main/kotlin/de/kuschku/bitflags/Flags.kt
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Quasseldroid - Quassel client for Android
- *
- * Copyright (c) 2021 Janne Mareike Koschinski
- * Copyright (c) 2021 The Quassel Project
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3 as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package de.kuschku.bitflags
-
-interface Flags<T, U> where U : Flag<T>, U : Enum<U> {
-  val all: Set<U>
-}
diff --git a/bitflags/src/main/kotlin/de/kuschku/bitflags/none.kt b/bitflags/src/main/kotlin/de/kuschku/bitflags/none.kt
deleted file mode 100644
index da9953d99a0a5676e16a17658a9b949a20013ad7..0000000000000000000000000000000000000000
--- a/bitflags/src/main/kotlin/de/kuschku/bitflags/none.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Quasseldroid - Quassel client for Android
- *
- * Copyright (c) 2021 Janne Mareike Koschinski
- * Copyright (c) 2021 The Quassel Project
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3 as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package de.kuschku.bitflags
-
-import java.util.*
-
-inline fun <reified T> Flags<*, T>.none(): EnumSet<T>
-  where T : Flag<*>, T : Enum<T> = EnumSet.noneOf(T::class.java)
diff --git a/bitflags/src/main/kotlin/de/kuschku/bitflags/of.kt b/bitflags/src/main/kotlin/de/kuschku/bitflags/of.kt
deleted file mode 100644
index 7398893ff40d2c344979595960e87a64a3aae3c8..0000000000000000000000000000000000000000
--- a/bitflags/src/main/kotlin/de/kuschku/bitflags/of.kt
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Quasseldroid - Quassel client for Android
- *
- * Copyright (c) 2021 Janne Mareike Koschinski
- * Copyright (c) 2021 The Quassel Project
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3 as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package de.kuschku.bitflags
-
-import java.util.*
-
-inline fun <reified T> Flags<*, T>.of(vararg values: T): EnumSet<T>
-  where T : Flag<*>, T : Enum<T> = values.toEnumSet()
-
-inline fun <reified T> Flags<*, T>.of(values: Collection<T>): EnumSet<T>
-  where T : Flag<*>, T : Enum<T> = values.toEnumSet()
diff --git a/bitflags/src/main/kotlin/de/kuschku/bitflags/toBits.kt b/bitflags/src/main/kotlin/de/kuschku/bitflags/toBits.kt
deleted file mode 100644
index fd822c25c9a83861f5c29c96beb2f2b7fc40ed47..0000000000000000000000000000000000000000
--- a/bitflags/src/main/kotlin/de/kuschku/bitflags/toBits.kt
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Quasseldroid - Quassel client for Android
- *
- * Copyright (c) 2021 Janne Mareike Koschinski
- * Copyright (c) 2021 The Quassel Project
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3 as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package de.kuschku.bitflags
-
-import kotlin.experimental.or
-
-@JvmName("toByteFlag")
-fun Set<Flag<Byte>>?.toBits(): Byte = this?.fold(0.toByte()) { acc, el ->
-  acc or el.value
-} ?: 0.toByte()
-
-@JvmName("toUByteFlag")
-fun Set<Flag<UByte>>?.toBits(): UByte = this?.fold(0.toUByte()) { acc, el ->
-  acc or el.value
-} ?: 0.toUByte()
-
-@JvmName("toShortFlag")
-fun Set<Flag<Short>>?.toBits(): Short = this?.fold(0.toShort()) { acc, el ->
-  acc or el.value
-} ?: 0.toShort()
-
-@JvmName("toUShortFlag")
-fun Set<Flag<UShort>>?.toBits(): UShort = this?.fold(0.toUShort()) { acc, el ->
-  acc or el.value
-} ?: 0.toUShort()
-
-@JvmName("toIntFlag")
-fun Set<Flag<Int>>?.toBits(): Int = this?.fold(0) { acc, el ->
-  acc or el.value
-} ?: 0
-
-@JvmName("toUIntFlag")
-fun Set<Flag<UInt>>?.toBits(): UInt = this?.fold(0.toUInt()) { acc, el ->
-  acc or el.value
-} ?: 0u
-
-@JvmName("toLongFlag")
-fun Set<Flag<Long>>?.toBits(): Long = this?.fold(0.toLong()) { acc, el ->
-  acc or el.value
-} ?: 0L
-
-@JvmName("toULongFlag")
-fun Set<Flag<ULong>>?.toBits(): ULong = this?.fold(0.toULong()) { acc, el ->
-  acc or el.value
-} ?: 0uL
diff --git a/bitflags/src/main/kotlin/de/kuschku/bitflags/toEnumSet.kt b/bitflags/src/main/kotlin/de/kuschku/bitflags/toEnumSet.kt
deleted file mode 100644
index 23ca9dcc2d01fae398de31a6426d85f25aa31386..0000000000000000000000000000000000000000
--- a/bitflags/src/main/kotlin/de/kuschku/bitflags/toEnumSet.kt
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Quasseldroid - Quassel client for Android
- *
- * Copyright (c) 2021 Janne Mareike Koschinski
- * Copyright (c) 2021 The Quassel Project
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3 as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package de.kuschku.bitflags
-
-import java.util.*
-
-inline fun <reified T : Enum<T>> Array<out T>.toEnumSet() =
-  EnumSet.noneOf(T::class.java).apply {
-    addAll(this@toEnumSet)
-  }
-
-inline fun <reified T : Enum<T>> Collection<T>.toEnumSet() =
-  EnumSet.noneOf(T::class.java).apply {
-    addAll(this@toEnumSet)
-  }
diff --git a/bitflags/src/main/kotlin/de/kuschku/bitflags/toFlag.kt b/bitflags/src/main/kotlin/de/kuschku/bitflags/toFlag.kt
deleted file mode 100644
index 1eb55bb51895779f0d4fd2be1d31daecc1dd0495..0000000000000000000000000000000000000000
--- a/bitflags/src/main/kotlin/de/kuschku/bitflags/toFlag.kt
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Quasseldroid - Quassel client for Android
- *
- * Copyright (c) 2021 Janne Mareike Koschinski
- * Copyright (c) 2021 The Quassel Project
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3 as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package de.kuschku.bitflags
-
-import java.util.*
-import kotlin.experimental.and
-
-inline fun <reified T> Flags<Byte, T>.of(value: Byte?): EnumSet<T> where T : Flag<Byte>, T : Enum<T> {
-  if (value == null) return emptyList<T>().toEnumSet()
-  return all.filter { (value and it.value) != 0.toByte() }.toEnumSet()
-}
-
-inline fun <reified T> Flags<UByte, T>.of(value: UByte?): EnumSet<T> where T : Flag<UByte>, T : Enum<T> {
-  if (value == null) return emptyList<T>().toEnumSet()
-  return all.filter { (value and it.value) != 0.toUByte() }.toEnumSet()
-}
-
-inline fun <reified T> Flags<Short, T>.of(value: Short?): EnumSet<T> where T : Flag<Short>, T : Enum<T> {
-  if (value == null) return emptyList<T>().toEnumSet()
-  return all.filter { (value and it.value) != 0.toShort() }.toEnumSet()
-}
-
-inline fun <reified T> Flags<UShort, T>.of(value: UShort?): EnumSet<T> where T : Flag<UShort>, T : Enum<T> {
-  if (value == null) return emptyList<T>().toEnumSet()
-  return all.filter { (value and it.value) != 0.toUShort() }.toEnumSet()
-}
-
-inline fun <reified T> Flags<Int, T>.of(value: Int?): EnumSet<T> where T : Flag<Int>, T : Enum<T> {
-  if (value == null) return emptyList<T>().toEnumSet()
-  return all.filter { (value and it.value) != 0 }.toEnumSet()
-}
-
-inline fun <reified T> Flags<UInt, T>.of(value: UInt?): EnumSet<T> where T : Flag<UInt>, T : Enum<T> {
-  if (value == null) return emptyList<T>().toEnumSet()
-  return all.filter { (value and it.value) != 0u }.toEnumSet()
-}
-
-inline fun <reified T> Flags<Long, T>.of(value: Long?): EnumSet<T> where T : Flag<Long>, T : Enum<T> {
-  if (value == null) return emptyList<T>().toEnumSet()
-  return all.filter { (value and it.value) != 0L }.toEnumSet()
-}
-
-inline fun <reified T> Flags<ULong, T>.of(value: ULong?): EnumSet<T> where T : Flag<ULong>, T : Enum<T> {
-  if (value == null) return emptyList<T>().toEnumSet()
-  return all.filter { (value and it.value) != 0uL }.toEnumSet()
-}
diff --git a/bitflags/src/main/kotlin/de/kuschku/bitflags/validValues.kt b/bitflags/src/main/kotlin/de/kuschku/bitflags/validValues.kt
deleted file mode 100644
index 3485bf8a268c5a4d5f18e287077874f8a623ea59..0000000000000000000000000000000000000000
--- a/bitflags/src/main/kotlin/de/kuschku/bitflags/validValues.kt
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Quasseldroid - Quassel client for Android
- *
- * Copyright (c) 2021 Janne Mareike Koschinski
- * Copyright (c) 2021 The Quassel Project
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3 as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package de.kuschku.bitflags
-
-import java.util.*
-
-@JvmName("validValuesUByte")
-inline fun <reified T> Flags<UByte, T>.validValues(): EnumSet<T>
-  where T : Flag<UByte>, T : Enum<T> =
-  all.filter { it.value != 0.toUByte() }.toEnumSet()
-
-@JvmName("validValuesByte")
-inline fun <reified T> Flags<Byte, T>.validValues(): EnumSet<T>
-  where T : Flag<Byte>, T : Enum<T> =
-  all.filter { it.value != 0.toByte() }.toEnumSet()
-
-@JvmName("validValuesUShort")
-inline fun <reified T> Flags<UShort, T>.validValues(): EnumSet<T>
-  where T : Flag<UShort>, T : Enum<T> =
-  all.filter { it.value != 0.toUShort() }.toEnumSet()
-
-@JvmName("validValuesShort")
-inline fun <reified T> Flags<Short, T>.validValues(): EnumSet<T>
-  where T : Flag<Short>, T : Enum<T> =
-  all.filter { it.value != 0.toShort() }.toEnumSet()
-
-@JvmName("validValuesUInt")
-inline fun <reified T> Flags<UInt, T>.validValues(): EnumSet<T>
-  where T : Flag<UInt>, T : Enum<T> =
-  all.filter { it.value != 0u }.toEnumSet()
-
-@JvmName("validValuesInt")
-inline fun <reified T> Flags<Int, T>.validValues(): EnumSet<T>
-  where T : Flag<Int>, T : Enum<T> =
-  all.filter { it.value != 0 }.toEnumSet()
-
-@JvmName("validValuesULong")
-inline fun <reified T> Flags<ULong, T>.validValues(): EnumSet<T>
-  where T : Flag<ULong>, T : Enum<T> =
-  all.filter { it.value != 0uL }.toEnumSet()
-
-@JvmName("validValuesLong")
-inline fun <reified T> Flags<Long, T>.validValues(): EnumSet<T>
-  where T : Flag<Long>, T : Enum<T> =
-  all.filter { it.value != 0L }.toEnumSet()
diff --git a/build.gradle b/build.gradle
index 10a970267b6805d50442f0ec5621dc8f5019e98b..bec9fa1f21c00e11a2d01b5cda2ee3cf60cd5c95 100644
--- a/build.gradle
+++ b/build.gradle
@@ -16,9 +16,3 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-
-buildscript {
-    dependencies {
-        classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.21'
-    }
-}
diff --git a/build.gradle.kts b/build.gradle.kts
index 94dc53a7b94ee3d15630df98983d3b5bd027ca51..78a62860e6ee9478011a1050c3aa3944d15923ed 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -33,22 +33,11 @@ buildscript {
 }
 
 allprojects {
-  extra["androidxAppcompatVersion"] = "1.2.0"
-  extra["androidxCoreVersion"] = "1.2.0"
-  extra["androidxComposeVersion"] = "1.0.0-alpha11"
-  extra["androidxLifecycleVersion"] = "2.3.0-rc01"
-  extra["androidxMultidexVersion"] = "2.0.1"
-  extra["daggerHiltVersion"] = "2.31.2-alpha"
-  extra["hamcrestVersion"] = "2.1"
-  extra["junit4Version"] = "4.13.1"
-  extra["junit5Version"] = "5.3.1"
-  extra["mdcVersion"] = "1.2.1"
-  extra["testContainersVersion"] = "1.15.1"
-
   repositories {
     google()
     mavenCentral()
     jcenter()
+    mavenLocal()
   }
 
   tasks.withType<KotlinCompile>().configureEach {
diff --git a/buildSrc/src/main/kotlin/de/kuschku/coverageconverter/ConvertCoverageReportsAction.kt b/buildSrc/src/main/kotlin/de/kuschku/coverageconverter/ConvertCoverageReportsAction.kt
deleted file mode 100644
index 9e2f3aa360ece654c61839686900cd5d206df94f..0000000000000000000000000000000000000000
--- a/buildSrc/src/main/kotlin/de/kuschku/coverageconverter/ConvertCoverageReportsAction.kt
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Quasseldroid - Quassel client for Android
- *
- * Copyright (c) 2021 Janne Mareike Koschinski
- * Copyright (c) 2021 The Quassel Project
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3 as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package de.kuschku.coverageconverter
-
-import org.gradle.api.Action
-import org.gradle.api.Task
-import org.gradle.testing.jacoco.tasks.JacocoReport
-import java.io.File
-
-internal class ConvertCoverageReportsAction(
-  private val jacocoReportTask: JacocoReport
-) : Action<Task> {
-  private fun findOutputFile(jacocoFile: File): File? {
-    val actualFile = jacocoFile.absoluteFile
-    if (actualFile.exists() && actualFile.parentFile.name == "jacoco") {
-      val folder = File(actualFile.parentFile.parentFile, "cobertura")
-      folder.mkdirs()
-      return File(folder, actualFile.name)
-    }
-
-    return null
-  }
-
-  private fun createPythonScript(name: String, temporaryDir: File): File {
-    val file = File(temporaryDir, name)
-    if (file.exists()) {
-      file.delete()
-    }
-    val source = CoverageConverterPlugin::class.java.getResourceAsStream("/coverageconverter/$name")
-    file.writeBytes(source.readAllBytes())
-    return file
-  }
-
-
-  override fun execute(t: Task) {
-    val cover2coverScript = createPythonScript("cover2cover.py", t.temporaryDir)
-    val source2filenameScript = createPythonScript("source2filename.py", t.temporaryDir)
-
-    fun cover2cover(reportFile: File, outputFile: File, sourceDirectories: Iterable<File>) {
-      t.project.exec {
-        commandLine("python3")
-        args(cover2coverScript.absolutePath)
-        args(reportFile.absolutePath)
-        args(sourceDirectories.map(File::getAbsolutePath))
-        standardOutput = outputFile.outputStream()
-      }
-    }
-
-    fun source2filename(reportFile: File) {
-      t.project.exec {
-        commandLine("python3")
-        args(source2filenameScript.absolutePath)
-        args(reportFile.absolutePath)
-      }
-    }
-
-    jacocoReportTask.reports.forEach {
-      if (it.isEnabled && it.destination.extension == "xml") {
-        val outputFile = findOutputFile(it.destination)
-        if (outputFile != null) {
-          cover2cover(it.destination, outputFile, jacocoReportTask.sourceDirectories)
-          source2filename(outputFile)
-        }
-      }
-    }
-  }
-}
diff --git a/buildSrc/src/main/kotlin/de/kuschku/coverageconverter/CoverageConverterPlugin.kt b/buildSrc/src/main/kotlin/de/kuschku/coverageconverter/CoverageConverterPlugin.kt
deleted file mode 100644
index 7c16efefe95dbc32de6c1879c4d34f49cb2f71b6..0000000000000000000000000000000000000000
--- a/buildSrc/src/main/kotlin/de/kuschku/coverageconverter/CoverageConverterPlugin.kt
+++ /dev/null
@@ -1,30 +0,0 @@
-package de.kuschku.coverageconverter
-
-import org.gradle.api.Plugin
-import org.gradle.api.Project
-import org.gradle.api.Task
-import org.gradle.api.tasks.testing.Test
-import org.gradle.kotlin.dsl.getByName
-import org.gradle.kotlin.dsl.register
-import org.gradle.testing.jacoco.tasks.JacocoReport
-
-class CoverageConverterPlugin : Plugin<Project> {
-  override fun apply(project: Project) {
-    project.afterEvaluate {
-      val testTask = tasks.getByName<Test>("test")
-
-      val jacocoReportTask = tasks.getByName<JacocoReport>("jacocoTestReport"){
-        dependsOn(testTask)
-      }
-
-      tasks.register("coberturaTestReport") {
-        dependsOn(jacocoReportTask)
-        mustRunAfter(jacocoReportTask)
-        group = "verification"
-
-        doLast(ConvertCoverageReportsAction(jacocoReportTask))
-      }
-    }
-  }
-}
-
diff --git a/buildSrc/src/main/resources/META-INF/gradle-plugins/de.kuschku.coverageconverter.properties b/buildSrc/src/main/resources/META-INF/gradle-plugins/de.kuschku.coverageconverter.properties
deleted file mode 100644
index 170902fa7f3a294e7c595310b5df0120901520d2..0000000000000000000000000000000000000000
--- a/buildSrc/src/main/resources/META-INF/gradle-plugins/de.kuschku.coverageconverter.properties
+++ /dev/null
@@ -1 +0,0 @@
-implementation-class=de.kuschku.coverageconverter.CoverageConverterPlugin
diff --git a/buildSrc/src/main/resources/coverageconverter/cover2cover.py b/buildSrc/src/main/resources/coverageconverter/cover2cover.py
deleted file mode 100644
index 7561ad560695061ff0b2cdb106cc03abea6a2a21..0000000000000000000000000000000000000000
--- a/buildSrc/src/main/resources/coverageconverter/cover2cover.py
+++ /dev/null
@@ -1,163 +0,0 @@
-#!/usr/bin/env python
-import sys
-import xml.etree.ElementTree as ET
-import re
-import os.path
-import time
-
-# branch-rate="0.0" complexity="0.0" line-rate="1.0"
-# branch="true" hits="1" number="86"
-
-def find_lines(j_package, filename):
-    """Return all <line> elements for a given source file in a package."""
-    lines = list()
-    sourcefiles = j_package.findall("sourcefile")
-    for sourcefile in sourcefiles:
-        if sourcefile.attrib.get("name") == os.path.basename(filename):
-            lines = lines + sourcefile.findall("line")
-    return lines
-
-def line_is_after(jm, start_line):
-    return int(jm.attrib.get('line', 0)) > start_line
-
-def method_lines(jmethod, jmethods, jlines):
-    """Filter the lines from the given set of jlines that apply to the given jmethod."""
-    start_line = int(jmethod.attrib.get('line', 0))
-    larger     = list(int(jm.attrib.get('line', 0)) for jm in jmethods if line_is_after(jm, start_line))
-    end_line   = min(larger) if len(larger) else 99999999
-
-    for jline in jlines:
-        if start_line <= int(jline.attrib['nr']) < end_line:
-            yield jline
-
-def convert_lines(j_lines, into):
-    """Convert the JaCoCo <line> elements into Cobertura <line> elements, add them under the given element."""
-    c_lines = ET.SubElement(into, 'lines')
-    for jline in j_lines:
-        mb = int(jline.attrib['mb'])
-        cb = int(jline.attrib['cb'])
-        ci = int(jline.attrib['ci'])
-
-        cline = ET.SubElement(c_lines, 'line')
-        cline.set('number', jline.attrib['nr'])
-        cline.set('hits', '1' if ci > 0 else '0') # Probably not true but no way to know from JaCoCo XML file
-
-        if mb + cb > 0:
-            percentage = str(int(100 * (float(cb) / (float(cb) + float(mb))))) + '%'
-            cline.set('branch',             'true')
-            cline.set('condition-coverage', percentage + ' (' + str(cb) + '/' + str(cb + mb) + ')')
-
-            cond = ET.SubElement(ET.SubElement(cline, 'conditions'), 'condition')
-            cond.set('number',   '0')
-            cond.set('type',     'jump')
-            cond.set('coverage', percentage)
-        else:
-            cline.set('branch', 'false')
-
-def path_to_filepath(path_to_class, sourcefilename):
-    return path_to_class[0: path_to_class.rfind("/") + 1] + sourcefilename
-
-def add_counters(source, target):
-    target.set('line-rate',   counter(source, 'LINE'))
-    target.set('branch-rate', counter(source, 'BRANCH'))
-    target.set('complexity', counter(source, 'COMPLEXITY', sum))
-
-def fraction(covered, missed):
-    return covered / (covered + missed)
-
-def sum(covered, missed):
-    return covered + missed
-
-def counter(source, type, operation=fraction):
-    cs = source.findall('counter')
-    c = next((ct for ct in cs if ct.attrib.get('type') == type), None)
-
-    if c is not None:
-        covered = float(c.attrib['covered'])
-        missed  = float(c.attrib['missed'])
-
-        return str(operation(covered, missed))
-    else:
-        return '0.0'
-
-def convert_method(j_method, j_lines):
-    c_method = ET.Element('method')
-    c_method.set('name',      j_method.attrib['name'])
-    c_method.set('signature', j_method.attrib['desc'])
-
-    add_counters(j_method, c_method)
-    convert_lines(j_lines, c_method)
-
-    return c_method
-
-def convert_class(j_class, j_package):
-    c_class = ET.Element('class')
-    c_class.set('name',     j_class.attrib['name'].replace('/', '.'))
-    c_class.set('filename', path_to_filepath(j_class.attrib['name'], j_class.attrib['sourcefilename']))
-
-    all_j_lines = list(find_lines(j_package, c_class.attrib['filename']))
-
-    c_methods   = ET.SubElement(c_class, 'methods')
-    all_j_methods = list(j_class.findall('method'))
-    for j_method in all_j_methods:
-        j_method_lines = method_lines(j_method, all_j_methods, all_j_lines)
-        c_methods.append(convert_method(j_method, j_method_lines))
-
-    add_counters(j_class, c_class)
-    convert_lines(all_j_lines, c_class)
-
-    return c_class
-
-def convert_package(j_package):
-    c_package = ET.Element('package')
-    c_package.attrib['name'] = j_package.attrib['name'].replace('/', '.')
-
-    c_classes = ET.SubElement(c_package, 'classes')
-    for j_class in j_package.findall('class'):
-        c_classes.append(convert_class(j_class, j_package))
-
-    add_counters(j_package, c_package)
-
-    return c_package
-
-def convert_root(source, target, source_roots):
-    try:
-      target.set('timestamp', str(int(source.find('sessioninfo').attrib['start']) / 1000))
-    except AttributeError as e:
-        target.set('timestamp', str(int(time.time() / 1000)))
-    sources     = ET.SubElement(target, 'sources')
-    for s in source_roots:
-        ET.SubElement(sources, 'source').text = s
-
-    packages = ET.SubElement(target, 'packages')
-
-    for group in source.findall('group'):
-        for package in group.findall('package'):
-            packages.append(convert_package(package))
-
-    for package in source.findall('package'):
-        packages.append(convert_package(package))
-
-    add_counters(source, target)
-
-def jacoco2cobertura(filename, source_roots):
-    if filename == '-':
-        root = ET.fromstring(sys.stdin.read())
-    else:
-        tree = ET.parse(filename)
-        root = tree.getroot()
-
-    into = ET.Element('coverage')
-    convert_root(root, into, source_roots)
-    print('<?xml version="1.0" ?>')
-    print(ET.tostring(into, encoding='unicode'))
-
-if __name__ == '__main__':
-    if len(sys.argv) < 2:
-        print("Usage: cover2cover.py FILENAME [SOURCE_ROOTS]")
-        sys.exit(1)
-
-    filename    = sys.argv[1]
-    source_roots = sys.argv[2:] if 2 < len(sys.argv) else '.'
-
-    jacoco2cobertura(filename, source_roots)
diff --git a/buildSrc/src/main/resources/coverageconverter/source2filename.py b/buildSrc/src/main/resources/coverageconverter/source2filename.py
deleted file mode 100644
index 2b60a9b37850051020111393d923d189e8d0c6b7..0000000000000000000000000000000000000000
--- a/buildSrc/src/main/resources/coverageconverter/source2filename.py
+++ /dev/null
@@ -1,44 +0,0 @@
-#!/usr/bin/env python
-import sys
-import xml.etree.ElementTree as ET
-import lxml.etree
-import re
-import os.path
-
-
-
-
-def convert_source(filename):
-    #read input file
-    root = lxml.etree.parse(filename)
-    sources = root.find('sources')
-    packages = root.find('packages')
-    for package in packages:
-        classes = package.find('classes')
-        for clazz in classes:
-            file_not_found = True
-            for source in sources:
-                full_filename = source.text + '/' + clazz.attrib['filename']
-                if os.path.isfile(full_filename):
-                    clazz.attrib['filename'] = full_filename
-                    file_not_found = False
-            if file_not_found:
-                print("Warning: File {} not found in all sources; removing from sources.".format(clazz.attrib['filename']))
-                clazz.getparent().remove(clazz)
-
-    data = lxml.etree.tostring(root, pretty_print=True)
-    #open the input file in write mode
-    fin = open(filename, "wb")
-    #overrite the input file with the resulting data
-    fin.write(data)
-    #close the file
-    fin.close()
-
-if __name__ == '__main__':
-    if len(sys.argv) < 2:
-        print("Usage: source2filename.py FILENAME")
-        sys.exit(1)
-
-    filename    = sys.argv[1]
-
-    convert_source(filename)
diff --git a/ci-containers/build.gradle.kts b/ci-containers/build.gradle.kts
deleted file mode 100644
index 504442f95d76597dac1abc2999c0cbd9740430d3..0000000000000000000000000000000000000000
--- a/ci-containers/build.gradle.kts
+++ /dev/null
@@ -1,11 +0,0 @@
-plugins {
-  kotlin("jvm")
-}
-
-dependencies {
-  implementation(kotlin("stdlib"))
-
-  val testContainersVersion: String by project.extra
-  api("org.testcontainers", "testcontainers", testContainersVersion)
-  api("org.testcontainers", "junit-jupiter", testContainersVersion)
-}
diff --git a/ci-containers/src/main/kotlin/de/kuschku/ci_containers/CiContainers.kt b/ci-containers/src/main/kotlin/de/kuschku/ci_containers/CiContainers.kt
deleted file mode 100644
index 96cb82e030a4b7799c775f89376720d450995045..0000000000000000000000000000000000000000
--- a/ci-containers/src/main/kotlin/de/kuschku/ci_containers/CiContainers.kt
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Quasseldroid - Quassel client for Android
- *
- * Copyright (c) 2021 Janne Mareike Koschinski
- * Copyright (c) 2021 The Quassel Project
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3 as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package de.kuschku.ci_containers
-
-import org.junit.jupiter.api.extension.ExtendWith
-
-@MustBeDocumented
-@Target(AnnotationTarget.CLASS, AnnotationTarget.ANNOTATION_CLASS)
-@Retention(AnnotationRetention.RUNTIME)
-@ExtendWith(CiContainersExtension::class)
-annotation class CiContainers
diff --git a/ci-containers/src/main/kotlin/de/kuschku/ci_containers/CiContainersExtension.kt b/ci-containers/src/main/kotlin/de/kuschku/ci_containers/CiContainersExtension.kt
deleted file mode 100644
index 3a9d84d190569301260e3692fefc1dd86bb9e544..0000000000000000000000000000000000000000
--- a/ci-containers/src/main/kotlin/de/kuschku/ci_containers/CiContainersExtension.kt
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Quasseldroid - Quassel client for Android
- *
- * Copyright (c) 2021 Janne Mareike Koschinski
- * Copyright (c) 2021 The Quassel Project
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3 as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package de.kuschku.ci_containers
-
-import org.junit.jupiter.api.extension.AfterEachCallback
-import org.junit.jupiter.api.extension.BeforeEachCallback
-import org.junit.jupiter.api.extension.ExtensionContext
-
-class CiContainersExtension : BeforeEachCallback, AfterEachCallback {
-  private fun getContainers(context: ExtensionContext?): List<ProvidedContainer> {
-    val containers = mutableListOf<ProvidedContainer>()
-    context?.requiredTestInstances?.allInstances?.forEach { instance ->
-      instance.javaClass.declaredFields.map { field ->
-        if (field.type == ProvidedContainer::class.java) {
-          field.trySetAccessible()
-          containers.add(field.get(instance) as ProvidedContainer)
-        }
-      }
-    }
-    return containers
-  }
-
-  override fun beforeEach(context: ExtensionContext?) {
-    getContainers(context).forEach(ProvidedContainer::start)
-  }
-
-  override fun afterEach(context: ExtensionContext?) {
-    getContainers(context).forEach(ProvidedContainer::stop)
-  }
-}
diff --git a/ci-containers/src/main/kotlin/de/kuschku/ci_containers/GitlabCiProvidedContainer.kt b/ci-containers/src/main/kotlin/de/kuschku/ci_containers/GitlabCiProvidedContainer.kt
deleted file mode 100644
index 2f49a38e870793326e5024ded02a49ee034455c2..0000000000000000000000000000000000000000
--- a/ci-containers/src/main/kotlin/de/kuschku/ci_containers/GitlabCiProvidedContainer.kt
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Quasseldroid - Quassel client for Android
- *
- * Copyright (c) 2021 Janne Mareike Koschinski
- * Copyright (c) 2021 The Quassel Project
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3 as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package de.kuschku.ci_containers
-
-import java.net.InetSocketAddress
-
-class GitlabCiProvidedContainer(
-  override val address: InetSocketAddress
-) : ProvidedContainer {
-  override fun start() = Unit
-  override fun stop() = Unit
-}
diff --git a/ci-containers/src/main/kotlin/de/kuschku/ci_containers/ProvidedContainer.kt b/ci-containers/src/main/kotlin/de/kuschku/ci_containers/ProvidedContainer.kt
deleted file mode 100644
index 7056b507aee6d14879a8f7d393cc5875c34d6637..0000000000000000000000000000000000000000
--- a/ci-containers/src/main/kotlin/de/kuschku/ci_containers/ProvidedContainer.kt
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Quasseldroid - Quassel client for Android
- *
- * Copyright (c) 2021 Janne Mareike Koschinski
- * Copyright (c) 2021 The Quassel Project
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3 as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package de.kuschku.ci_containers
-
-import java.net.InetSocketAddress
-
-interface ProvidedContainer {
-  fun start()
-  fun stop()
-
-  val address: InetSocketAddress
-}
diff --git a/ci-containers/src/main/kotlin/de/kuschku/ci_containers/TestContainersProvidedContainer.kt b/ci-containers/src/main/kotlin/de/kuschku/ci_containers/TestContainersProvidedContainer.kt
deleted file mode 100644
index 7b76f4bf36387bbe0a6d8ee3d8508709e16a5c64..0000000000000000000000000000000000000000
--- a/ci-containers/src/main/kotlin/de/kuschku/ci_containers/TestContainersProvidedContainer.kt
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Quasseldroid - Quassel client for Android
- *
- * Copyright (c) 2021 Janne Mareike Koschinski
- * Copyright (c) 2021 The Quassel Project
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3 as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package de.kuschku.ci_containers
-
-import org.testcontainers.containers.GenericContainer
-import java.net.InetSocketAddress
-
-class TestContainersProvidedContainer<T : GenericContainer<T>>(
-  private val container: T,
-  private val port: Int
-) : ProvidedContainer {
-  override fun start() = container.start()
-  override fun stop() = container.stop()
-  override val address
-    get() = InetSocketAddress(
-      container.containerIpAddress,
-      container.getMappedPort(port)
-    )
-}
diff --git a/gradle.properties b/gradle.properties
index b7d373b952193ba33704538bb972353b2278fb6b..92a927257850c45596b5d51b4889168e2aef3fbd 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -32,3 +32,18 @@ org.gradle.caching=true
 # Enable AndroidX
 android.useAndroidX=true
 android.enableJetifier=true
+
+# Dependency versions
+androidxAppcompatVersion=1.2.0
+androidxCoreVersion=1.2.0
+androidxComposeVersion=1.0.0-alpha11
+androidxLifecycleVersion=2.3.0-rc01
+androidxMultidexVersion=2.0.1
+daggerHiltVersion=2.31.2-alpha
+hamcrestVersion=2.1
+junit4Version=4.13.1
+junit5Version=5.3.1
+kotlinBitflagsVersion=1.0.1
+mdcVersion=1.2.1
+sl4jVersion=1.7.30
+testcontainersCiVersion=1.0.0
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index da9702f9e70d99d587ce73bbfb0c212fc66e24c9..78f43eab3d62f86be3fb6126b31f9cf60bdc91e0 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,6 @@
 distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-6.8-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.2-bin.zip
+distributionSha256Sum=8de6efc274ab52332a9c820366dd5cf5fc9d35ec7078fd70c8ec6913431ee610
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
diff --git a/libquassel/build.gradle.kts b/libquassel/build.gradle.kts
index 47ed5b5abc610a74ed7d036429c7ad1b801f2783..7216904bb91505fd38b1cd2788f53806d9b8ddbf 100644
--- a/libquassel/build.gradle.kts
+++ b/libquassel/build.gradle.kts
@@ -1,22 +1,15 @@
 plugins {
   kotlin("jvm")
   id("jacoco")
-  id("de.kuschku.coverageconverter")
+  id("de.justjanne.jacoco-cobertura-converter") version "1.0"
 }
 
 tasks.withType<Test> {
   useJUnitPlatform()
 }
 
-tasks.getByName<JacocoReport>("jacocoTestReport") {
-  reports {
-    sourceDirectories.from(fileTree("src/main/kotlin"))
-    classDirectories.from(fileTree("build/classes"))
-    xml.destination = File("$buildDir/reports/jacoco/report.xml")
-    html.isEnabled = true
-    xml.isEnabled = true
-    csv.isEnabled = false
-  }
+coverage {
+  autoConfigureCoverage = true
 }
 
 dependencies {
@@ -25,13 +18,15 @@ dependencies {
   implementation("org.jetbrains.kotlinx", "kotlinx-coroutines-test", "1.4.2")
   api(project(":protocol"))
 
-  val junit5Version: String by project.extra
+  val junit5Version: String by project
   testImplementation("org.junit.jupiter", "junit-jupiter-api", junit5Version)
   testImplementation("org.junit.jupiter", "junit-jupiter-params", junit5Version)
   testRuntimeOnly("org.junit.jupiter", "junit-jupiter-engine", junit5Version)
-  val hamcrestVersion: String by project.extra
+  val hamcrestVersion: String by project
   testImplementation("org.hamcrest", "hamcrest-library", hamcrestVersion)
 
-  testImplementation(project(":ci-containers"))
-  testImplementation("org.slf4j", "slf4j-simple", "1.7.30")
+  val testcontainersCiVersion: String by project
+  testImplementation("de.justjanne", "testcontainers-ci", testcontainersCiVersion)
+  val sl4jVersion: String by project
+  testImplementation("org.slf4j", "slf4j-simple", sl4jVersion)
 }
diff --git a/libquassel/src/main/kotlin/de/kuschku/libquassel/io/CoroutineChannel.kt b/libquassel/src/main/kotlin/info/quasseldroid/libquassel/io/CoroutineChannel.kt
similarity index 94%
rename from libquassel/src/main/kotlin/de/kuschku/libquassel/io/CoroutineChannel.kt
rename to libquassel/src/main/kotlin/info/quasseldroid/libquassel/io/CoroutineChannel.kt
index a2d3b88db5646033832beaac0250d6435b7b7a9a..b629ef242c109bb20253eabefb96a6c13675724e 100644
--- a/libquassel/src/main/kotlin/de/kuschku/libquassel/io/CoroutineChannel.kt
+++ b/libquassel/src/main/kotlin/info/quasseldroid/libquassel/io/CoroutineChannel.kt
@@ -17,10 +17,10 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.quasseldroid.protocol.io
+package info.quasseldroid.libquassel.io
 
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.quasseldroid.util.TlsInfo
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.libquassel.util.TlsInfo
 import kotlinx.coroutines.Dispatchers
 import kotlinx.coroutines.asCoroutineDispatcher
 import kotlinx.coroutines.flow.MutableStateFlow
diff --git a/libquassel/src/main/kotlin/de/kuschku/libquassel/io/FixedDeflaterOutputStream.kt b/libquassel/src/main/kotlin/info/quasseldroid/libquassel/io/FixedDeflaterOutputStream.kt
similarity index 95%
rename from libquassel/src/main/kotlin/de/kuschku/libquassel/io/FixedDeflaterOutputStream.kt
rename to libquassel/src/main/kotlin/info/quasseldroid/libquassel/io/FixedDeflaterOutputStream.kt
index abdad9f25eddc40e639b1e0d094cf674f544cf4f..d626e96eb2bd69220e0a9b79d78da2b37eedaf16 100644
--- a/libquassel/src/main/kotlin/de/kuschku/libquassel/io/FixedDeflaterOutputStream.kt
+++ b/libquassel/src/main/kotlin/info/quasseldroid/libquassel/io/FixedDeflaterOutputStream.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.quasseldroid.protocol.io
+package info.quasseldroid.libquassel.io
 
 import java.io.OutputStream
 import java.util.zip.DeflaterOutputStream
diff --git a/libquassel/src/main/kotlin/de/kuschku/libquassel/io/ReadableWrappedChannel.kt b/libquassel/src/main/kotlin/info/quasseldroid/libquassel/io/ReadableWrappedChannel.kt
similarity index 98%
rename from libquassel/src/main/kotlin/de/kuschku/libquassel/io/ReadableWrappedChannel.kt
rename to libquassel/src/main/kotlin/info/quasseldroid/libquassel/io/ReadableWrappedChannel.kt
index f8009d9377cd73bf713961e3e85f37d1e55770a4..fa2918d4e92511a48e9c284e8240d2ce750c886b 100644
--- a/libquassel/src/main/kotlin/de/kuschku/libquassel/io/ReadableWrappedChannel.kt
+++ b/libquassel/src/main/kotlin/info/quasseldroid/libquassel/io/ReadableWrappedChannel.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.io
+package info.quasseldroid.libquassel.io
 
 import java.io.InputStream
 import java.nio.ByteBuffer
diff --git a/libquassel/src/main/kotlin/de/kuschku/libquassel/io/StreamChannel.kt b/libquassel/src/main/kotlin/info/quasseldroid/libquassel/io/StreamChannel.kt
similarity index 94%
rename from libquassel/src/main/kotlin/de/kuschku/libquassel/io/StreamChannel.kt
rename to libquassel/src/main/kotlin/info/quasseldroid/libquassel/io/StreamChannel.kt
index 382be13d33b33652bab5027e646cf2c81a33be0b..80c4079529d0bf324d586b26ac1c9e3fb9f870e0 100644
--- a/libquassel/src/main/kotlin/de/kuschku/libquassel/io/StreamChannel.kt
+++ b/libquassel/src/main/kotlin/info/quasseldroid/libquassel/io/StreamChannel.kt
@@ -17,10 +17,9 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.quasseldroid.protocol.io
+package info.quasseldroid.libquassel.io
 
-import de.kuschku.libquassel.io.ReadableWrappedChannel
-import de.kuschku.quasseldroid.util.TlsInfo
+import info.quasseldroid.libquassel.util.TlsInfo
 import java.io.Flushable
 import java.io.InputStream
 import java.io.OutputStream
diff --git a/libquassel/src/main/kotlin/de/kuschku/libquassel/io/WritableWrappedChannel.kt b/libquassel/src/main/kotlin/info/quasseldroid/libquassel/io/WritableWrappedChannel.kt
similarity index 98%
rename from libquassel/src/main/kotlin/de/kuschku/libquassel/io/WritableWrappedChannel.kt
rename to libquassel/src/main/kotlin/info/quasseldroid/libquassel/io/WritableWrappedChannel.kt
index ce25556b3981a2ff3434de7032c9e0d484ea8c39..b1ea8aae46821aa5b7688c556a4b6965c137b377 100644
--- a/libquassel/src/main/kotlin/de/kuschku/libquassel/io/WritableWrappedChannel.kt
+++ b/libquassel/src/main/kotlin/info/quasseldroid/libquassel/io/WritableWrappedChannel.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.quasseldroid.protocol.io
+package info.quasseldroid.libquassel.io
 
 import java.io.OutputStream
 import java.nio.ByteBuffer
diff --git a/libquassel/src/main/kotlin/de/kuschku/libquassel/util/TlsInfo.kt b/libquassel/src/main/kotlin/info/quasseldroid/libquassel/util/TlsInfo.kt
similarity index 98%
rename from libquassel/src/main/kotlin/de/kuschku/libquassel/util/TlsInfo.kt
rename to libquassel/src/main/kotlin/info/quasseldroid/libquassel/util/TlsInfo.kt
index d2e781dd954936c8f49eedd81e117a57d47e7a42..f1e3f085cd8707da0820338464866feecf0f205c 100644
--- a/libquassel/src/main/kotlin/de/kuschku/libquassel/util/TlsInfo.kt
+++ b/libquassel/src/main/kotlin/info/quasseldroid/libquassel/util/TlsInfo.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.quasseldroid.util
+package info.quasseldroid.libquassel.util
 
 import java.security.cert.Certificate
 import java.security.cert.X509Certificate
diff --git a/libquassel/src/main/kotlin/de/kuschku/libquassel/util/X509Helper.kt b/libquassel/src/main/kotlin/info/quasseldroid/libquassel/util/X509Helper.kt
similarity index 96%
rename from libquassel/src/main/kotlin/de/kuschku/libquassel/util/X509Helper.kt
rename to libquassel/src/main/kotlin/info/quasseldroid/libquassel/util/X509Helper.kt
index 0c5b8817744fb0189d60aba5df8de9f785c2469d..cdc72065ea2ee9f343cdf7121be9c673caa05a0c 100644
--- a/libquassel/src/main/kotlin/de/kuschku/libquassel/util/X509Helper.kt
+++ b/libquassel/src/main/kotlin/info/quasseldroid/libquassel/util/X509Helper.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.quasseldroid.util
+package info.quasseldroid.libquassel.util
 
 import java.io.ByteArrayInputStream
 import java.security.cert.Certificate
diff --git a/libquassel/src/test/kotlin/de/kuschku/libquassel/testutil/quasselContainer.kt b/libquassel/src/test/kotlin/de/kuschku/libquassel/testutil/quasselContainer.kt
deleted file mode 100644
index 44b7c1e7857d0fe6eed1edf8ebb8690cd8948cef..0000000000000000000000000000000000000000
--- a/libquassel/src/test/kotlin/de/kuschku/libquassel/testutil/quasselContainer.kt
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Quasseldroid - Quassel client for Android
- *
- * Copyright (c) 2021 Janne Mareike Koschinski
- * Copyright (c) 2021 The Quassel Project
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3 as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package de.kuschku.libquassel.testutil
-
-import de.kuschku.ci_containers.TestContainersProvidedContainer
-import de.kuschku.ci_containers.providedContainer
-
-fun quasselContainer() = providedContainer("QUASSEL_CONTAINER") {
-  TestContainersProvidedContainer(
-    QuasselCoreContainer(),
-    QuasselCoreContainer.QUASSEL_PORT
-  )
-}
diff --git a/libquassel/src/test/kotlin/de/kuschku/libquassel/EndToEndTest.kt b/libquassel/src/test/kotlin/info/quasseldroid/libquassel/EndToEndTest.kt
similarity index 77%
rename from libquassel/src/test/kotlin/de/kuschku/libquassel/EndToEndTest.kt
rename to libquassel/src/test/kotlin/info/quasseldroid/libquassel/EndToEndTest.kt
index 474b7901940c85bf25dd12a4e7f50d786644145d..80c90cd9c16f73cbad53a9f474b609f755770e9f 100644
--- a/libquassel/src/test/kotlin/de/kuschku/libquassel/EndToEndTest.kt
+++ b/libquassel/src/test/kotlin/info/quasseldroid/libquassel/EndToEndTest.kt
@@ -17,36 +17,37 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel
+package info.quasseldroid.libquassel
 
-import de.kuschku.bitflags.of
-import de.kuschku.ci_containers.CiContainers
-import de.kuschku.ci_containers.CiContainersExtension
-import de.kuschku.libquassel.protocol.connection.*
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.messages.handshake.ClientInit
-import de.kuschku.libquassel.protocol.serializers.HandshakeSerializers
-import de.kuschku.libquassel.protocol.serializers.handshake.ClientInitSerializer
-import de.kuschku.libquassel.protocol.serializers.primitive.HandshakeMapSerializer
-import de.kuschku.libquassel.protocol.serializers.primitive.IntSerializer
-import de.kuschku.libquassel.protocol.variant.into
-import de.kuschku.libquassel.testutil.TestX509TrustManager
-import de.kuschku.libquassel.testutil.quasselContainer
-import de.kuschku.quasseldroid.protocol.io.CoroutineChannel
+import de.justjanne.bitflags.of
+import de.justjanne.testcontainersci.api.providedContainer
+import de.justjanne.testcontainersci.extension.CiContainers
+import info.quasseldroid.libquassel.io.CoroutineChannel
+import info.quasseldroid.libquassel.testutil.QuasselCoreContainer
+import info.quasseldroid.libquassel.testutil.TestX509TrustManager
+import info.quasseldroid.protocol.connection.*
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.messages.handshake.ClientInit
+import info.quasseldroid.protocol.serializers.HandshakeSerializers
+import info.quasseldroid.protocol.serializers.handshake.ClientInitSerializer
+import info.quasseldroid.protocol.serializers.primitive.HandshakeMapSerializer
+import info.quasseldroid.protocol.serializers.primitive.IntSerializer
+import info.quasseldroid.protocol.variant.into
 import kotlinx.coroutines.ExperimentalCoroutinesApi
 import kotlinx.coroutines.runBlocking
-import org.junit.jupiter.api.Assertions
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
-import org.junit.jupiter.api.extension.ExtendWith
+import java.net.InetSocketAddress
 import java.nio.ByteBuffer
 import javax.net.ssl.SSLContext
 
 @ExperimentalCoroutinesApi
 @CiContainers
 class EndToEndTest {
-  private val quassel = quasselContainer()
+  private val quassel = providedContainer("QUASSEL_CONTAINER") {
+    QuasselCoreContainer()
+  }
 
   private val sslContext = SSLContext.getInstance("TLSv1.3").apply {
     init(null, arrayOf(TestX509TrustManager), null)
@@ -59,7 +60,12 @@ class EndToEndTest {
 
   @Test
   fun testConnect() = runBlocking {
-    channel.connect(quassel.address)
+    channel.connect(
+      InetSocketAddress(
+        quassel.address,
+        quassel.getMappedPort(4242)
+      )
+    )
 
     println("Writing protocol")
     write(sizePrefix = false) {
diff --git a/libquassel/src/test/kotlin/de/kuschku/libquassel/testutil/QuasselCoreContainer.kt b/libquassel/src/test/kotlin/info/quasseldroid/libquassel/testutil/QuasselCoreContainer.kt
similarity index 97%
rename from libquassel/src/test/kotlin/de/kuschku/libquassel/testutil/QuasselCoreContainer.kt
rename to libquassel/src/test/kotlin/info/quasseldroid/libquassel/testutil/QuasselCoreContainer.kt
index b985a594c32874f96cad911c40ec4c0a166b2dbc..8cd3afe409617bc866298da8f507b03591dce646 100644
--- a/libquassel/src/test/kotlin/de/kuschku/libquassel/testutil/QuasselCoreContainer.kt
+++ b/libquassel/src/test/kotlin/info/quasseldroid/libquassel/testutil/QuasselCoreContainer.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.testutil
+package info.quasseldroid.libquassel.testutil
 
 import org.slf4j.LoggerFactory
 import org.testcontainers.containers.BindMode
diff --git a/libquassel/src/test/kotlin/de/kuschku/libquassel/testutil/TestX509TrustManager.kt b/libquassel/src/test/kotlin/info/quasseldroid/libquassel/testutil/TestX509TrustManager.kt
similarity index 96%
rename from libquassel/src/test/kotlin/de/kuschku/libquassel/testutil/TestX509TrustManager.kt
rename to libquassel/src/test/kotlin/info/quasseldroid/libquassel/testutil/TestX509TrustManager.kt
index 4ace77892250771bd883a680e97b868501010f45..ceb9ce2addd99bf02f38c16d895ba13838542505 100644
--- a/libquassel/src/test/kotlin/de/kuschku/libquassel/testutil/TestX509TrustManager.kt
+++ b/libquassel/src/test/kotlin/info/quasseldroid/libquassel/testutil/TestX509TrustManager.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.testutil
+package info.quasseldroid.libquassel.testutil
 
 import java.security.cert.X509Certificate
 import javax.net.ssl.X509TrustManager
diff --git a/protocol/build.gradle.kts b/protocol/build.gradle.kts
index d665980a0106c7408c18136fb119e5d6128b64f2..2be90656a4028616be334c6afe3c7d7c3b9feec1 100644
--- a/protocol/build.gradle.kts
+++ b/protocol/build.gradle.kts
@@ -1,40 +1,28 @@
 plugins {
   kotlin("jvm")
   jacoco
-  id("de.kuschku.coverageconverter")
+  id("de.justjanne.jacoco-cobertura-converter") version "1.0"
 }
 
 tasks.withType<Test> {
   useJUnitPlatform()
 }
 
-jacoco {
-  toolVersion = "0.8.3"
-}
-
-tasks.getByName<JacocoReport>("jacocoTestReport") {
-  reports {
-    sourceDirectories.from(fileTree("src/main/kotlin"))
-    xml.destination = File("$buildDir/reports/jacoco/report.xml")
-    html.isEnabled = true
-    xml.isEnabled = true
-    csv.isEnabled = false
-  }
+coverage {
+  autoConfigureCoverage = true
 }
 
 dependencies {
   implementation(kotlin("stdlib"))
   api("org.threeten", "threetenbp", "1.4.0")
-  api(project(":bitflags"))
+  val kotlinBitflagsVersion: String by project
+  api("de.justjanne", "kotlin-bitflags", kotlinBitflagsVersion)
   api(project(":coverage-annotations"))
 
-  val junit5Version: String by project.extra
+  val junit5Version: String by project
   testImplementation("org.junit.jupiter", "junit-jupiter-api", junit5Version)
   testImplementation("org.junit.jupiter", "junit-jupiter-params", junit5Version)
   testRuntimeOnly("org.junit.jupiter", "junit-jupiter-engine", junit5Version)
-  val hamcrestVersion: String by project.extra
+  val hamcrestVersion: String by project
   testImplementation("org.hamcrest", "hamcrest-library", hamcrestVersion)
-  val testContainersVersion: String by project.extra
-  testImplementation("org.testcontainers", "testcontainers", testContainersVersion)
-  testImplementation("org.testcontainers", "junit-jupiter", testContainersVersion)
 }
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ConnectionHeader.kt b/protocol/src/main/java/info/quasseldroid/protocol/connection/ConnectionHeader.kt
similarity index 94%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ConnectionHeader.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/connection/ConnectionHeader.kt
index 6e0d939d4dd3320930640d7eb65acf205b33ebcc..8673c6637dca078fdccce0895625b0f4e10aa5a3 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ConnectionHeader.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/connection/ConnectionHeader.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.connection
+package info.quasseldroid.protocol.connection
 
 data class ConnectionHeader(
   val features: ProtocolFeatures,
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ConnectionHeaderSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/connection/ConnectionHeaderSerializer.kt
similarity index 84%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ConnectionHeaderSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/connection/ConnectionHeaderSerializer.kt
index aea9cf66e2112d61a01910999c2c788c0ff65cbb..4d34ca72dc767d2e74bb5312aabc432849f0ba2a 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ConnectionHeaderSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/connection/ConnectionHeaderSerializer.kt
@@ -17,15 +17,15 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.connection
+package info.quasseldroid.protocol.connection
 
-import de.kuschku.bitflags.of
-import de.kuschku.bitflags.toBits
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.serializers.primitive.Serializer
-import de.kuschku.libquassel.protocol.serializers.primitive.UByteSerializer
-import de.kuschku.libquassel.protocol.serializers.primitive.UIntSerializer
+import de.justjanne.bitflags.of
+import de.justjanne.bitflags.toBits
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.serializers.primitive.Serializer
+import info.quasseldroid.protocol.serializers.primitive.UByteSerializer
+import info.quasseldroid.protocol.serializers.primitive.UIntSerializer
 import java.nio.ByteBuffer
 
 object ConnectionHeaderSerializer : Serializer<ConnectionHeader> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ProtocolFeature.kt b/protocol/src/main/java/info/quasseldroid/protocol/connection/ProtocolFeature.kt
similarity index 87%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ProtocolFeature.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/connection/ProtocolFeature.kt
index 5ecc2de186cb03d43160ce1101a2881283c1e46b..493cd137b24869286af2482c0c0df6ce106376e3 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ProtocolFeature.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/connection/ProtocolFeature.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.connection
+package info.quasseldroid.protocol.connection
 
-import de.kuschku.bitflags.Flag
-import de.kuschku.bitflags.Flags
-import de.kuschku.bitflags.toEnumSet
+import de.justjanne.bitflags.Flag
+import de.justjanne.bitflags.Flags
+import de.justjanne.bitflags.toEnumSet
 
 enum class ProtocolFeature(
   override val value: UByte,
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ProtocolInfo.kt b/protocol/src/main/java/info/quasseldroid/protocol/connection/ProtocolInfo.kt
similarity index 94%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ProtocolInfo.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/connection/ProtocolInfo.kt
index 1ec8299c8aba98274fa379c491bbaa0a33a838b3..ea7f2e971f68b7a84c4dd9985f8957bd8ca2ec47 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ProtocolInfo.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/connection/ProtocolInfo.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.connection
+package info.quasseldroid.protocol.connection
 
 data class ProtocolInfo(
   val flags: ProtocolFeatures,
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ProtocolInfoSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/connection/ProtocolInfoSerializer.kt
similarity index 77%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ProtocolInfoSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/connection/ProtocolInfoSerializer.kt
index 2a48500c063268fdfab0217bff75e48d4a229434..9285a7046da9a02998499f2ee17dad692bc0420b 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ProtocolInfoSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/connection/ProtocolInfoSerializer.kt
@@ -17,14 +17,14 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.connection
+package info.quasseldroid.protocol.connection
 
-import de.kuschku.bitflags.of
-import de.kuschku.bitflags.toBits
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.serializers.primitive.Serializer
-import de.kuschku.libquassel.protocol.serializers.primitive.UByteSerializer
+import de.justjanne.bitflags.of
+import de.justjanne.bitflags.toBits
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.serializers.primitive.Serializer
+import info.quasseldroid.protocol.serializers.primitive.UByteSerializer
 import java.nio.ByteBuffer
 
 object ProtocolInfoSerializer : Serializer<ProtocolInfo> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ProtocolMeta.kt b/protocol/src/main/java/info/quasseldroid/protocol/connection/ProtocolMeta.kt
similarity index 94%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ProtocolMeta.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/connection/ProtocolMeta.kt
index f8c3323d766b943908a68270f12d8becda369987..2613563055ce13c04ccdd4818a3ac21ac272f052 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ProtocolMeta.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/connection/ProtocolMeta.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.connection
+package info.quasseldroid.protocol.connection
 
 data class ProtocolMeta(
   val data: UShort,
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ProtocolMetaSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/connection/ProtocolMetaSerializer.kt
similarity index 76%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ProtocolMetaSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/connection/ProtocolMetaSerializer.kt
index 54628ff1c1a21f0055941b4e846a39061468a49d..920f9f5cbead05c9cb0f1193000f04db40133f98 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ProtocolMetaSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/connection/ProtocolMetaSerializer.kt
@@ -17,13 +17,13 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.connection
+package info.quasseldroid.protocol.connection
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.serializers.primitive.Serializer
-import de.kuschku.libquassel.protocol.serializers.primitive.UByteSerializer
-import de.kuschku.libquassel.protocol.serializers.primitive.UShortSerializer
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.serializers.primitive.Serializer
+import info.quasseldroid.protocol.serializers.primitive.UByteSerializer
+import info.quasseldroid.protocol.serializers.primitive.UShortSerializer
 import java.nio.ByteBuffer
 
 object ProtocolMetaSerializer : Serializer<ProtocolMeta> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ProtocolVersion.kt b/protocol/src/main/java/info/quasseldroid/protocol/connection/ProtocolVersion.kt
similarity index 95%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ProtocolVersion.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/connection/ProtocolVersion.kt
index b4fc9e379af2a4ed2620fb627aaf417b23a89251..3052c14a954d7a1f030166ddb790c34537a470b7 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/connection/ProtocolVersion.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/connection/ProtocolVersion.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.connection
+package info.quasseldroid.protocol.connection
 
 enum class ProtocolVersion(
   val value: UByte,
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/features/FeatureSet.kt b/protocol/src/main/java/info/quasseldroid/protocol/features/FeatureSet.kt
similarity index 96%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/features/FeatureSet.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/features/FeatureSet.kt
index c8502a6f7422901c47f30b9e311791166062114e..24cce95f8dde1e8c482aad86ff3066c95fb88021 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/features/FeatureSet.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/features/FeatureSet.kt
@@ -17,9 +17,9 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.features
+package info.quasseldroid.protocol.features
 
-import de.kuschku.bitflags.of
+import de.justjanne.bitflags.of
 
 class FeatureSet internal constructor(
   private val features: Set<QuasselFeature>,
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/features/LegacyFeature.kt b/protocol/src/main/java/info/quasseldroid/protocol/features/LegacyFeature.kt
similarity index 95%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/features/LegacyFeature.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/features/LegacyFeature.kt
index fece096395bde848a5ec4259323c067dde19a49e..25733d33e028fe8e86374ef2c3ace4b70a2d3873 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/features/LegacyFeature.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/features/LegacyFeature.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.features
+package info.quasseldroid.protocol.features
 
-import de.kuschku.bitflags.Flag
-import de.kuschku.bitflags.Flags
-import de.kuschku.bitflags.toEnumSet
+import de.justjanne.bitflags.Flag
+import de.justjanne.bitflags.Flags
+import de.justjanne.bitflags.toEnumSet
 
 /**
  * A list of features that are optional in core and/or client, but need runtime checking
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/features/QuasselFeature.kt b/protocol/src/main/java/info/quasseldroid/protocol/features/QuasselFeature.kt
similarity index 98%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/features/QuasselFeature.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/features/QuasselFeature.kt
index 09ee52b712e7d459b5d23b0eb159563f30bc54dc..09dd7f4ae49462538f7e59572e3ee84ac9fde707 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/features/QuasselFeature.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/features/QuasselFeature.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.features
+package info.quasseldroid.protocol.features
 
 import de.kuschku.codecoverage.Generated
 
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/io/ByteBufferUtil.kt b/protocol/src/main/java/info/quasseldroid/protocol/io/ByteBufferUtil.kt
similarity index 97%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/io/ByteBufferUtil.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/io/ByteBufferUtil.kt
index 15bf1c7820e43c514de0f2eac90fb9eeecdeaea4..72ed1e26bc5b399a334c5436ec95bef7580afc92 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/io/ByteBufferUtil.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/io/ByteBufferUtil.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.io
+package info.quasseldroid.protocol.io
 
 import java.nio.ByteBuffer
 
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/io/ChainedByteBuffer.kt b/protocol/src/main/java/info/quasseldroid/protocol/io/ChainedByteBuffer.kt
similarity index 98%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/io/ChainedByteBuffer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/io/ChainedByteBuffer.kt
index 20c977eada078fe4f4311ab3b34c0abef8946afc..a67f0e69f889388dfd14cafa05a3aa48f2573b59 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/io/ChainedByteBuffer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/io/ChainedByteBuffer.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.io
+package info.quasseldroid.protocol.io
 
 import java.nio.ByteBuffer
 import java.util.*
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/io/StringEncoder.kt b/protocol/src/main/java/info/quasseldroid/protocol/io/StringEncoder.kt
similarity index 98%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/io/StringEncoder.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/io/StringEncoder.kt
index 782c8946d308b0321a783ce828f2fb100c054d18..f1c9e9ffca00deb725a02ba7a7e1e6c355259e96 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/io/StringEncoder.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/io/StringEncoder.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.io
+package info.quasseldroid.protocol.io
 
 import java.nio.ByteBuffer
 import java.nio.CharBuffer
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/ClientInit.kt b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/ClientInit.kt
similarity index 82%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/ClientInit.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/ClientInit.kt
index 433f354b0e8dac0a2c1a84fe301178cc870b3288..51ff8fce06be2b5ebe33617639c2f9757d2e7203 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/ClientInit.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/ClientInit.kt
@@ -17,10 +17,10 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.messages.handshake
+package info.quasseldroid.protocol.messages.handshake
 
-import de.kuschku.libquassel.protocol.features.LegacyFeatures
-import de.kuschku.libquassel.protocol.features.QuasselFeatureName
+import info.quasseldroid.protocol.features.LegacyFeatures
+import info.quasseldroid.protocol.features.QuasselFeatureName
 
 data class ClientInit(
   val clientVersion: String?,
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/ClientInitAck.kt b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/ClientInitAck.kt
similarity index 79%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/ClientInitAck.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/ClientInitAck.kt
index ec75b1dba2252c048941876926a0463ebaa008fb..104d43da7fbc6fc7c2a4a31a6d3477af1070c531 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/ClientInitAck.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/ClientInitAck.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.messages.handshake
+package info.quasseldroid.protocol.messages.handshake
 
-import de.kuschku.libquassel.protocol.features.LegacyFeatures
-import de.kuschku.libquassel.protocol.features.QuasselFeatureName
-import de.kuschku.libquassel.protocol.variant.QVariantList
+import info.quasseldroid.protocol.features.LegacyFeatures
+import info.quasseldroid.protocol.features.QuasselFeatureName
+import info.quasseldroid.protocol.variant.QVariantList
 
 data class ClientInitAck(
   val coreFeatures: LegacyFeatures,
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/ClientInitReject.kt b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/ClientInitReject.kt
similarity index 93%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/ClientInitReject.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/ClientInitReject.kt
index d7710d492cbc5cc30f8a03d7be5f8981859c0d0c..3414d988ccd79f37e2ea211ed099a772328455fb 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/ClientInitReject.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/ClientInitReject.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.messages.handshake
+package info.quasseldroid.protocol.messages.handshake
 
 data class ClientInitReject(
   val errorString: String?
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/ClientLogin.kt b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/ClientLogin.kt
similarity index 93%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/ClientLogin.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/ClientLogin.kt
index 19dd2c25442af4c0cb06efe64ca24e1591d3ffc2..8a4232ab40a839cb4f7f32b636b22977b1d823f5 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/ClientLogin.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/ClientLogin.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.messages.handshake
+package info.quasseldroid.protocol.messages.handshake
 
 data class ClientLogin(
   val user: String?,
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/ClientLoginAck.kt b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/ClientLoginAck.kt
similarity index 93%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/ClientLoginAck.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/ClientLoginAck.kt
index 077607e79b4dc65234daff60adb5c81301b6823e..7ed8546064e5ab402660fa3ad636b5a0001e7d6e 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/ClientLoginAck.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/ClientLoginAck.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.messages.handshake
+package info.quasseldroid.protocol.messages.handshake
 
 object ClientLoginAck {
   override fun toString(): String {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/ClientLoginReject.kt b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/ClientLoginReject.kt
similarity index 93%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/ClientLoginReject.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/ClientLoginReject.kt
index 13eee3e7532e149f12e7b8fdc78bd966b6070f59..baecc0b199a61b38110b58306bf6e81edfc1e614 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/ClientLoginReject.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/ClientLoginReject.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.messages.handshake
+package info.quasseldroid.protocol.messages.handshake
 
 data class ClientLoginReject(
   val errorString: String?
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/CoreSetupAck.kt b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/CoreSetupAck.kt
similarity index 93%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/CoreSetupAck.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/CoreSetupAck.kt
index 5bcf74827bc9d03a951eca8711f563a1782c0619..ed4360b358fe92458b97086dec9150cbf4308698 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/CoreSetupAck.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/CoreSetupAck.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.messages.handshake
+package info.quasseldroid.protocol.messages.handshake
 
 object CoreSetupAck {
   override fun toString(): String {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/CoreSetupData.kt b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/CoreSetupData.kt
similarity index 88%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/CoreSetupData.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/CoreSetupData.kt
index b67d6cd718d05af4d23b4a05d438b2501dd4c3a3..abf8d27b963c8ad1361e43a43c16c49801c9e23c 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/CoreSetupData.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/CoreSetupData.kt
@@ -17,9 +17,9 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.messages.handshake
+package info.quasseldroid.protocol.messages.handshake
 
-import de.kuschku.libquassel.protocol.variant.QVariantMap
+import info.quasseldroid.protocol.variant.QVariantMap
 
 data class CoreSetupData(
   val adminUser: String?,
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/CoreSetupReject.kt b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/CoreSetupReject.kt
similarity index 93%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/CoreSetupReject.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/CoreSetupReject.kt
index 4fc468d8f1a8afe2bec8ec15ecf8816e07269a37..69278c4ed274f5e8d36df4fe1bf07b1f30999d44 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/CoreSetupReject.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/CoreSetupReject.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.messages.handshake
+package info.quasseldroid.protocol.messages.handshake
 
 data class CoreSetupReject(
   val errorString: String?
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/SessionInit.kt b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/SessionInit.kt
similarity index 87%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/SessionInit.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/SessionInit.kt
index 0716fa532641bf97cd234531fa442ded4f512fb2..47b9aad27eaabd96193570eddabb6e8cfe78aed3 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/messages/handshake/SessionInit.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/messages/handshake/SessionInit.kt
@@ -17,9 +17,9 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.messages.handshake
+package info.quasseldroid.protocol.messages.handshake
 
-import de.kuschku.libquassel.protocol.variant.QVariantList
+import info.quasseldroid.protocol.variant.QVariantList
 
 data class SessionInit(
   val identities: QVariantList?,
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/HandshakeSerializers.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/HandshakeSerializers.kt
similarity index 76%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/HandshakeSerializers.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/HandshakeSerializers.kt
index c2a9dba5593ffc0016af90cdc04d477263dad529..4cd8fcbff88875854da4f90a391ee2f8440546a9 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/HandshakeSerializers.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/HandshakeSerializers.kt
@@ -17,13 +17,13 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers
+package info.quasseldroid.protocol.serializers
 
-import de.kuschku.libquassel.protocol.serializers.handshake.ClientInitAckSerializer
-import de.kuschku.libquassel.protocol.serializers.handshake.ClientInitRejectSerializer
-import de.kuschku.libquassel.protocol.serializers.handshake.ClientInitSerializer
-import de.kuschku.libquassel.protocol.serializers.handshake.HandshakeSerializer
-import de.kuschku.libquassel.protocol.serializers.primitive.*
+import info.quasseldroid.protocol.serializers.handshake.ClientInitAckSerializer
+import info.quasseldroid.protocol.serializers.handshake.ClientInitRejectSerializer
+import info.quasseldroid.protocol.serializers.handshake.ClientInitSerializer
+import info.quasseldroid.protocol.serializers.handshake.HandshakeSerializer
+import info.quasseldroid.protocol.serializers.primitive.*
 import java.util.*
 
 object HandshakeSerializers {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/NoSerializerForTypeException.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/NoSerializerForTypeException.kt
similarity index 92%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/NoSerializerForTypeException.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/NoSerializerForTypeException.kt
index b8519291cd378a013b5e2d8cd906f53a22f78f2a..a776552ed9874e8cd330d306b5b4381de4b2a15d 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/NoSerializerForTypeException.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/NoSerializerForTypeException.kt
@@ -17,10 +17,10 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers
+package info.quasseldroid.protocol.serializers
 
-import de.kuschku.libquassel.protocol.variant.QtType
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.variant.QtType
+import info.quasseldroid.protocol.variant.QuasselType
 
 sealed class NoSerializerForTypeException : Exception() {
   data class Qt(
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/QtSerializers.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/QtSerializers.kt
similarity index 91%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/QtSerializers.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/QtSerializers.kt
index d03d777dcfecaec40d93b3ae1acf78163abeccb6..22449c4a842bcec53f612c6d74f2457704c41d96 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/QtSerializers.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/QtSerializers.kt
@@ -17,10 +17,10 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers
+package info.quasseldroid.protocol.serializers
 
-import de.kuschku.libquassel.protocol.serializers.primitive.*
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.serializers.primitive.*
+import info.quasseldroid.protocol.variant.QtType
 import java.util.*
 
 object QtSerializers {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/QuasselSerializers.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/QuasselSerializers.kt
similarity index 91%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/QuasselSerializers.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/QuasselSerializers.kt
index ed9ed2883d19fe2a801c12d4b5df8b9b0b1b97fd..d923d7d64a9b70efa76fa17c55645eda3c9a4cfc 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/QuasselSerializers.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/QuasselSerializers.kt
@@ -17,10 +17,10 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers
+package info.quasseldroid.protocol.serializers
 
-import de.kuschku.libquassel.protocol.serializers.primitive.*
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.serializers.primitive.*
+import info.quasseldroid.protocol.variant.QuasselType
 import java.util.*
 
 object QuasselSerializers {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/handshake/ClientInitAckSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/handshake/ClientInitAckSerializer.kt
similarity index 82%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/handshake/ClientInitAckSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/handshake/ClientInitAckSerializer.kt
index 76236f54e24ec1c1e0b2dbd00bb34432e35b1969..c44f4cc3a863c99e44d3e5ed3f1b4c50364d7954 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/handshake/ClientInitAckSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/handshake/ClientInitAckSerializer.kt
@@ -17,14 +17,14 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.handshake
+package info.quasseldroid.protocol.serializers.handshake
 
-import de.kuschku.bitflags.of
-import de.kuschku.bitflags.toBits
-import de.kuschku.libquassel.protocol.features.LegacyFeature
-import de.kuschku.libquassel.protocol.features.QuasselFeatureName
-import de.kuschku.libquassel.protocol.messages.handshake.ClientInitAck
-import de.kuschku.libquassel.protocol.variant.*
+import de.justjanne.bitflags.of
+import de.justjanne.bitflags.toBits
+import info.quasseldroid.protocol.features.LegacyFeature
+import info.quasseldroid.protocol.features.QuasselFeatureName
+import info.quasseldroid.protocol.messages.handshake.ClientInitAck
+import info.quasseldroid.protocol.variant.*
 
 object ClientInitAckSerializer : HandshakeSerializer<ClientInitAck> {
   override val type: String = "ClientInitAck"
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/handshake/ClientInitRejectSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/handshake/ClientInitRejectSerializer.kt
similarity index 76%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/handshake/ClientInitRejectSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/handshake/ClientInitRejectSerializer.kt
index d064611743f1305945084890404c54da147816df..249bf58543aaf2da0abe0e844a1dc13dc506a601 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/handshake/ClientInitRejectSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/handshake/ClientInitRejectSerializer.kt
@@ -17,13 +17,13 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.handshake
+package info.quasseldroid.protocol.serializers.handshake
 
-import de.kuschku.libquassel.protocol.messages.handshake.ClientInitReject
-import de.kuschku.libquassel.protocol.variant.QVariantMap
-import de.kuschku.libquassel.protocol.variant.QtType
-import de.kuschku.libquassel.protocol.variant.into
-import de.kuschku.libquassel.protocol.variant.qVariant
+import info.quasseldroid.protocol.messages.handshake.ClientInitReject
+import info.quasseldroid.protocol.variant.QVariantMap
+import info.quasseldroid.protocol.variant.QtType
+import info.quasseldroid.protocol.variant.into
+import info.quasseldroid.protocol.variant.qVariant
 
 object ClientInitRejectSerializer : HandshakeSerializer<ClientInitReject> {
   override val type: String = "ClientInitReject"
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/handshake/ClientInitSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/handshake/ClientInitSerializer.kt
similarity index 75%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/handshake/ClientInitSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/handshake/ClientInitSerializer.kt
index 831feaf554856be7a6475d3e4c3094969cd2b3d8..ee1321262f1210749fbccae7ce9670d7165d2cf7 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/handshake/ClientInitSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/handshake/ClientInitSerializer.kt
@@ -17,17 +17,17 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.handshake
+package info.quasseldroid.protocol.serializers.handshake
 
-import de.kuschku.bitflags.of
-import de.kuschku.bitflags.toBits
-import de.kuschku.libquassel.protocol.features.LegacyFeature
-import de.kuschku.libquassel.protocol.features.QuasselFeatureName
-import de.kuschku.libquassel.protocol.messages.handshake.ClientInit
-import de.kuschku.libquassel.protocol.variant.QVariantMap
-import de.kuschku.libquassel.protocol.variant.QtType
-import de.kuschku.libquassel.protocol.variant.into
-import de.kuschku.libquassel.protocol.variant.qVariant
+import de.justjanne.bitflags.of
+import de.justjanne.bitflags.toBits
+import info.quasseldroid.protocol.features.LegacyFeature
+import info.quasseldroid.protocol.features.QuasselFeatureName
+import info.quasseldroid.protocol.messages.handshake.ClientInit
+import info.quasseldroid.protocol.variant.QVariantMap
+import info.quasseldroid.protocol.variant.QtType
+import info.quasseldroid.protocol.variant.into
+import info.quasseldroid.protocol.variant.qVariant
 
 object ClientInitSerializer : HandshakeSerializer<ClientInit> {
   override val type: String = "ClientInit"
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/handshake/HandshakeSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/handshake/HandshakeSerializer.kt
similarity index 88%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/handshake/HandshakeSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/handshake/HandshakeSerializer.kt
index 45e863f0ea420f76c5aa8967ce2572dbf68d7e37..c9f560937b90bb9e1e5230d33a9e2f7a0ffa7495 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/handshake/HandshakeSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/handshake/HandshakeSerializer.kt
@@ -17,9 +17,9 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.handshake
+package info.quasseldroid.protocol.serializers.handshake
 
-import de.kuschku.libquassel.protocol.variant.QVariantMap
+import info.quasseldroid.protocol.variant.QVariantMap
 
 interface HandshakeSerializer<T> {
   val type: String
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/BoolSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/BoolSerializer.kt
similarity index 84%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/BoolSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/BoolSerializer.kt
index 1e51bd5373906099e6e967165d80110f4959398e..ae36f4b6a0599d06f0eac79d479daee043739c88 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/BoolSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/BoolSerializer.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.QtType
 import java.nio.ByteBuffer
 
 object BoolSerializer : QtSerializer<Boolean> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/BufferIdSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/BufferIdSerializer.kt
similarity index 81%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/BufferIdSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/BufferIdSerializer.kt
index 23791d21227c0bc901205966f9a65b3de636eace..6f527b7d5316ab452dd3f95177c8c9dfdeff011f 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/BufferIdSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/BufferIdSerializer.kt
@@ -17,12 +17,12 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.types.BufferId
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.types.BufferId
+import info.quasseldroid.protocol.variant.QuasselType
 import java.nio.ByteBuffer
 
 object BufferIdSerializer : QuasselSerializer<BufferId> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/BufferInfoSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/BufferInfoSerializer.kt
similarity index 83%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/BufferInfoSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/BufferInfoSerializer.kt
index 0620967804d6011dbff1877550dd6dab3750a1ba..b400cd6dc756492ac0922294753be6cb219f2d3d 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/BufferInfoSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/BufferInfoSerializer.kt
@@ -17,15 +17,15 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.bitflags.of
-import de.kuschku.bitflags.toBits
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.types.BufferInfo
-import de.kuschku.libquassel.protocol.types.BufferType
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import de.justjanne.bitflags.of
+import de.justjanne.bitflags.toBits
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.types.BufferInfo
+import info.quasseldroid.protocol.types.BufferType
+import info.quasseldroid.protocol.variant.QuasselType
 import java.nio.ByteBuffer
 
 object BufferInfoSerializer : QuasselSerializer<BufferInfo> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/ByteBufferSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/ByteBufferSerializer.kt
similarity index 83%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/ByteBufferSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/ByteBufferSerializer.kt
index f32731be3c636e4a427c2859f44607a43c2038af..07fc69340e4e0a785c2baae41c9fe226dc7dd7ad 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/ByteBufferSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/ByteBufferSerializer.kt
@@ -17,12 +17,12 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.io.copyData
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.io.copyData
+import info.quasseldroid.protocol.variant.QtType
 import java.nio.ByteBuffer
 
 object ByteBufferSerializer : QtSerializer<ByteBuffer?> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/ByteSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/ByteSerializer.kt
similarity index 83%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/ByteSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/ByteSerializer.kt
index 2d3d7083c8af6d899dbf4244740f3c7efa09e7b4..b3dd069a97e33b65da2594b3678f273bd67e148b 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/ByteSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/ByteSerializer.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.QtType
 import java.nio.ByteBuffer
 
 object ByteSerializer : QtSerializer<Byte> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/DateSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/DateSerializer.kt
similarity index 86%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/DateSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/DateSerializer.kt
index 6c11ed3e0564bde135de396c14f0755475d5ab51..0a02256bd589d24e2e7cc42bd6fe8a47134215c2 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/DateSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/DateSerializer.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.QtType
 import org.threeten.bp.LocalDate
 import org.threeten.bp.temporal.JulianFields
 import java.nio.ByteBuffer
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/DateTimeSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/DateTimeSerializer.kt
similarity index 90%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/DateTimeSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/DateTimeSerializer.kt
index a727ed77e12c934f80f4eeadb3547cc6cce08a41..a532f967265f259e779148b58367c781d8bd1ea5 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/DateTimeSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/DateTimeSerializer.kt
@@ -17,12 +17,12 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.types.TimeSpec
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.types.TimeSpec
+import info.quasseldroid.protocol.variant.QtType
 import org.threeten.bp.*
 import org.threeten.bp.temporal.Temporal
 import java.nio.ByteBuffer
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/DccIpDetectionModeSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/DccIpDetectionModeSerializer.kt
similarity index 79%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/DccIpDetectionModeSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/DccIpDetectionModeSerializer.kt
index 3f79c42b5f725927d5415fd30e4ec70ce828fb4d..fcc9ad1ffeaaca7f8d3149a433e3e3c9dcf0f725 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/DccIpDetectionModeSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/DccIpDetectionModeSerializer.kt
@@ -17,13 +17,12 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.types.DccIpDetectionMode
-import de.kuschku.libquassel.protocol.types.DccPortSelectionMode
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.types.DccIpDetectionMode
+import info.quasseldroid.protocol.variant.QuasselType
 import java.nio.ByteBuffer
 
 object DccIpDetectionModeSerializer : QuasselSerializer<DccIpDetectionMode?> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/DccPortSelectionModeSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/DccPortSelectionModeSerializer.kt
similarity index 82%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/DccPortSelectionModeSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/DccPortSelectionModeSerializer.kt
index 6d1d10796a7d477bd3ca899757636ea75f7e09ae..27b78d5f597d2fe4aff5533ed86896489d4fb740 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/DccPortSelectionModeSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/DccPortSelectionModeSerializer.kt
@@ -17,12 +17,12 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.types.DccPortSelectionMode
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.types.DccPortSelectionMode
+import info.quasseldroid.protocol.variant.QuasselType
 import java.nio.ByteBuffer
 
 object DccPortSelectionModeSerializer : QuasselSerializer<DccPortSelectionMode?> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/DoubleSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/DoubleSerializer.kt
similarity index 83%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/DoubleSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/DoubleSerializer.kt
index 1e81a519d2b2ca664188715bf6be580d243a6edd..f708071b53de044b40229d80a6dccfd2b0e117cb 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/DoubleSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/DoubleSerializer.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.QtType
 import java.nio.ByteBuffer
 
 object DoubleSerializer : QtSerializer<Double> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/FloatSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/FloatSerializer.kt
similarity index 83%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/FloatSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/FloatSerializer.kt
index 636262b56edd0c918ecc44688e735e7236985af0..c759d6077aa92ebd7c05e951f6c9d290f7a10a41 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/FloatSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/FloatSerializer.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.QtType
 import java.nio.ByteBuffer
 
 object FloatSerializer : QtSerializer<Float> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/HandshakeMapSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/HandshakeMapSerializer.kt
similarity index 88%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/HandshakeMapSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/HandshakeMapSerializer.kt
index 5f7b4c2b1ad9b7ecf073f57465a08841656a2c08..b281e570db29d99f4eee7c0cc5f5ac4c2d4cf0d0 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/HandshakeMapSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/HandshakeMapSerializer.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.*
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.*
 import java.nio.ByteBuffer
 
 object HandshakeMapSerializer : QtSerializer<QVariantMap> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/IdentityIdSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/IdentityIdSerializer.kt
similarity index 81%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/IdentityIdSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/IdentityIdSerializer.kt
index 256f80a1ef7a52581dd85a660c8d568c25759ced..87252060087d1c009faab5da524bc8dadf039900 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/IdentityIdSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/IdentityIdSerializer.kt
@@ -17,12 +17,12 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.types.IdentityId
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.types.IdentityId
+import info.quasseldroid.protocol.variant.QuasselType
 import java.nio.ByteBuffer
 
 object IdentityIdSerializer : QuasselSerializer<IdentityId> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/IntSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/IntSerializer.kt
similarity index 83%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/IntSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/IntSerializer.kt
index 54db403556c156642baae1ada9141a6d2ca1b2fa..4276b63ef3b7f6d5d9b98176559a3c3d5e3eae1f 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/IntSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/IntSerializer.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.QtType
 import java.nio.ByteBuffer
 
 object IntSerializer : QtSerializer<Int> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/LongSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/LongSerializer.kt
similarity index 83%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/LongSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/LongSerializer.kt
index d592f55efc82e4e2f3fb30a0a9bd033c85678ff3..4d47fcc47c011e95df99b64388bfa7f53c6ed866 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/LongSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/LongSerializer.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.QtType
 import java.nio.ByteBuffer
 
 object LongSerializer : QtSerializer<Long> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/MessageSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/MessageSerializer.kt
similarity index 86%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/MessageSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/MessageSerializer.kt
index 4eaf85cad7a2d503f83d8586c531de6cb52cef3d..cd426cf26c15a8615b56766d92214a78669fdf23 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/MessageSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/MessageSerializer.kt
@@ -17,17 +17,17 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.bitflags.of
-import de.kuschku.bitflags.toBits
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.features.QuasselFeature
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.types.Message
-import de.kuschku.libquassel.protocol.types.MessageFlag
-import de.kuschku.libquassel.protocol.types.MessageType
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import de.justjanne.bitflags.of
+import de.justjanne.bitflags.toBits
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.features.QuasselFeature
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.types.Message
+import info.quasseldroid.protocol.types.MessageFlag
+import info.quasseldroid.protocol.types.MessageType
+import info.quasseldroid.protocol.variant.QuasselType
 import org.threeten.bp.Instant
 import java.nio.ByteBuffer
 
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/MsgIdSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/MsgIdSerializer.kt
similarity index 81%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/MsgIdSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/MsgIdSerializer.kt
index aab03d828f3a9d5d756d5bec250fde5d234c6965..b3885e1bda774fed24e3cd9965f5a0e6b5f67374 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/MsgIdSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/MsgIdSerializer.kt
@@ -17,13 +17,13 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.features.QuasselFeature
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.types.MsgId
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.features.QuasselFeature
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.types.MsgId
+import info.quasseldroid.protocol.variant.QuasselType
 import java.nio.ByteBuffer
 
 object MsgIdSerializer : QuasselSerializer<MsgId> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/NetworkIdSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/NetworkIdSerializer.kt
similarity index 81%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/NetworkIdSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/NetworkIdSerializer.kt
index 6827e02a841231d5ce6ef40015f592710e004f9d..2afa5409bdefc656592a79c9e6fb6c16445c877f 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/NetworkIdSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/NetworkIdSerializer.kt
@@ -17,12 +17,12 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.types.NetworkId
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.types.NetworkId
+import info.quasseldroid.protocol.variant.QuasselType
 import java.nio.ByteBuffer
 
 object NetworkIdSerializer : QuasselSerializer<NetworkId> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/PeerPtrSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/PeerPtrSerializer.kt
similarity index 83%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/PeerPtrSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/PeerPtrSerializer.kt
index 461e0093590ebe29519662dff5026d54e743d681..713f91b94beb912d40dde7ff5d764a79937f48f4 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/PeerPtrSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/PeerPtrSerializer.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.QuasselType
 import java.nio.ByteBuffer
 
 object PeerPtrSerializer : QuasselSerializer<ULong> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QCharSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QCharSerializer.kt
similarity index 82%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QCharSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QCharSerializer.kt
index 77045149b60b1f377b1d4d5af3820c4957e599b7..3355e7eaf6f3d80905165cd9d7140e6ee8be51f3 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QCharSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QCharSerializer.kt
@@ -17,12 +17,12 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.io.StringEncoder
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.io.StringEncoder
+import info.quasseldroid.protocol.variant.QtType
 import java.nio.ByteBuffer
 import kotlin.concurrent.getOrSet
 
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QHostAddressSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QHostAddressSerializer.kt
similarity index 89%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QHostAddressSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QHostAddressSerializer.kt
index be41946440ae25172b30abf9c9779190fda9093c..9c377f94add2ec0de8e42680ffc71f27cd9e7f09 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QHostAddressSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QHostAddressSerializer.kt
@@ -17,12 +17,12 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.types.NetworkLayerProtocol
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.types.NetworkLayerProtocol
+import info.quasseldroid.protocol.variant.QuasselType
 import java.net.Inet4Address
 import java.net.Inet6Address
 import java.net.InetAddress
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QStringListSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QStringListSerializer.kt
similarity index 84%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QStringListSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QStringListSerializer.kt
index 4a3db40a1d0261ef95fa59e326dd9b410dd6f548..518c6c589334a22aac29085ea1587879bd4a0332 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QStringListSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QStringListSerializer.kt
@@ -17,12 +17,12 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.QStringList
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.QStringList
+import info.quasseldroid.protocol.variant.QtType
 import java.nio.ByteBuffer
 
 object QStringListSerializer : QtSerializer<QStringList> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QVariantListSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QVariantListSerializer.kt
similarity index 81%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QVariantListSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QVariantListSerializer.kt
index 986fb566059ba270e53c224e94a170a67ecd1803..208615e86b99288683f43388f5329b836658661f 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QVariantListSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QVariantListSerializer.kt
@@ -17,13 +17,13 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.QVariantList
-import de.kuschku.libquassel.protocol.variant.QVariant_
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.QVariantList
+import info.quasseldroid.protocol.variant.QVariant_
+import info.quasseldroid.protocol.variant.QtType
 import java.nio.ByteBuffer
 
 object QVariantListSerializer : QtSerializer<QVariantList> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QVariantMapSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QVariantMapSerializer.kt
similarity index 83%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QVariantMapSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QVariantMapSerializer.kt
index 7de2401591116480f0c7ffef3aea9779fea813a8..f64b6f612b08f2ae029569444cc6845ade8ef303 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QVariantMapSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QVariantMapSerializer.kt
@@ -17,13 +17,13 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.QVariantMap
-import de.kuschku.libquassel.protocol.variant.QVariant_
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.QVariantMap
+import info.quasseldroid.protocol.variant.QVariant_
+import info.quasseldroid.protocol.variant.QtType
 import java.nio.ByteBuffer
 
 object QVariantMapSerializer : QtSerializer<QVariantMap> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QVariantSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QVariantSerializer.kt
similarity index 81%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QVariantSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QVariantSerializer.kt
index 18b9113a1beea97be9da9d1f9d85336445066945..2d28fdbefc71c246fb4ba19028568d631648ffa7 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QVariantSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QVariantSerializer.kt
@@ -17,17 +17,17 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.serializers.NoSerializerForTypeException
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.serializers.QuasselSerializers
-import de.kuschku.libquassel.protocol.variant.QVariant
-import de.kuschku.libquassel.protocol.variant.QVariant_
-import de.kuschku.libquassel.protocol.variant.QtType
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.serializers.NoSerializerForTypeException
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.serializers.QuasselSerializers
+import info.quasseldroid.protocol.variant.QVariant
+import info.quasseldroid.protocol.variant.QVariant_
+import info.quasseldroid.protocol.variant.QtType
+import info.quasseldroid.protocol.variant.QuasselType
 import java.nio.ByteBuffer
 
 object QVariantSerializer : QtSerializer<QVariant_> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QtSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QtSerializer.kt
similarity index 87%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QtSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QtSerializer.kt
index 3e26d5b562c837512bf328111f697266618ec501..e981e81083fe6aa403019220c34b78193721f1b4 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QtSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QtSerializer.kt
@@ -17,9 +17,9 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.variant.QtType
 
 interface QtSerializer<T> : Serializer<T> {
   val qtType: QtType
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QuasselSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QuasselSerializer.kt
similarity index 83%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QuasselSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QuasselSerializer.kt
index a2530f4a99fb646f400e1ce672d1c6a11176f493..cb83b4aa3b870e4ff89bf7cef8adc37e29ec3770 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/QuasselSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/QuasselSerializer.kt
@@ -17,10 +17,10 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.variant.QtType
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.variant.QtType
+import info.quasseldroid.protocol.variant.QuasselType
 
 interface QuasselSerializer<T> : QtSerializer<T> {
   override val qtType: QtType get() = quasselType.qtType
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/Serializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/Serializer.kt
similarity index 83%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/Serializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/Serializer.kt
index 40dd0fc98ca17f33da390adfc911b7a8b0c648e4..49eb6c66a3a3cf1b9a7122cc985c53624c8dd238 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/Serializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/Serializer.kt
@@ -17,10 +17,10 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
 import java.nio.ByteBuffer
 
 interface Serializer<T> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/ShortSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/ShortSerializer.kt
similarity index 83%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/ShortSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/ShortSerializer.kt
index d3ea4dd89834dd29c3acd78642037ced60a65505..094c649f579c6a4d5969c8402107c530a7df3c04 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/ShortSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/ShortSerializer.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.QtType
 import java.nio.ByteBuffer
 
 object ShortSerializer : QtSerializer<Short> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/StringSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/StringSerializer.kt
similarity index 90%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/StringSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/StringSerializer.kt
index e2040f2e19fae9662e352f10ff5ed472693d2812..649178a5023b23bb238f3836c2f1f7964746c576 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/StringSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/StringSerializer.kt
@@ -17,12 +17,12 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.io.StringEncoder
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.io.StringEncoder
+import info.quasseldroid.protocol.variant.QtType
 import java.nio.ByteBuffer
 import java.nio.charset.Charset
 import kotlin.concurrent.getOrSet
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/StringSerializerAscii.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/StringSerializerAscii.kt
similarity index 92%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/StringSerializerAscii.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/StringSerializerAscii.kt
index 8811510ea70b0dd6d61ad5a953ab1f7894049858..9eec4bb68887d23817cbd92e3ec3146ffef08044 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/StringSerializerAscii.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/StringSerializerAscii.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
 object StringSerializerAscii : StringSerializer(Charsets.ISO_8859_1, true)
 
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/StringSerializerUtf16.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/StringSerializerUtf16.kt
similarity index 92%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/StringSerializerUtf16.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/StringSerializerUtf16.kt
index 3cbefd468b4e910bb38975785913801ccad6b455..2d40edba1a0a982508c8b20071ef6848fbd2b796 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/StringSerializerUtf16.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/StringSerializerUtf16.kt
@@ -17,6 +17,6 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
 object StringSerializerUtf16 : StringSerializer(Charsets.UTF_16BE, false)
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/StringSerializerUtf8.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/StringSerializerUtf8.kt
similarity index 92%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/StringSerializerUtf8.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/StringSerializerUtf8.kt
index 4d05c3d019ee78e74cce711f018ad84c97f09f70..9c9d4ce21447a2a57683812ef30446050e645bb0 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/StringSerializerUtf8.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/StringSerializerUtf8.kt
@@ -17,6 +17,6 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
 object StringSerializerUtf8 : StringSerializer(Charsets.UTF_8, false)
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/TimeSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/TimeSerializer.kt
similarity index 86%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/TimeSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/TimeSerializer.kt
index c608474f877e2dd829b720105163b5d72fc6f452..323d83a11961e6adba57a15b2b2be981b2ee5e79 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/TimeSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/TimeSerializer.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.QtType
 import org.threeten.bp.LocalTime
 import java.nio.ByteBuffer
 
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/UByteSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/UByteSerializer.kt
similarity index 83%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/UByteSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/UByteSerializer.kt
index e303014798af0df3dbda8cea5abea217815d8094..d9da69a5500f3e78c0e550e04877ae0850ca780a 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/UByteSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/UByteSerializer.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.QtType
 import java.nio.ByteBuffer
 
 object UByteSerializer : QtSerializer<UByte> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/UIntSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/UIntSerializer.kt
similarity index 83%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/UIntSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/UIntSerializer.kt
index 39221efb9283fc6c1d8c0fea401cbd6fc13a9620..8f19b4595d2f5b7dacf052a7f9678d532a39baaf 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/UIntSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/UIntSerializer.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.QtType
 import java.nio.ByteBuffer
 
 object UIntSerializer : QtSerializer<UInt> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/ULongSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/ULongSerializer.kt
similarity index 83%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/ULongSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/ULongSerializer.kt
index 92e3c68bfc314018d7e1207935dbe3efb7c01f5e..7173df1733f51bef2d8fffc12c04ee3fc79ce7e9 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/ULongSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/ULongSerializer.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.QtType
 import java.nio.ByteBuffer
 
 object ULongSerializer : QtSerializer<ULong> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/UShortSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/UShortSerializer.kt
similarity index 83%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/UShortSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/UShortSerializer.kt
index ae6e66f577f092c85ce39191c858d017c073622e..21cf3187917261266f0c5be356ab007efaa0e3ef 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/UShortSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/UShortSerializer.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.QtType
 import java.nio.ByteBuffer
 
 object UShortSerializer : QtSerializer<UShort> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/VoidSerializer.kt b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/VoidSerializer.kt
similarity index 82%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/VoidSerializer.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/VoidSerializer.kt
index c3b9b60023cf535d02251dbb0b9f68578aac087e..f97a587b4ea0b88e779fc3716786ad689132cb8a 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/serializers/primitive/VoidSerializer.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/serializers/primitive/VoidSerializer.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.variant.QtType
 import java.nio.ByteBuffer
 
 object VoidSerializer : QtSerializer<Unit> {
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/BufferActivity.kt b/protocol/src/main/java/info/quasseldroid/protocol/types/BufferActivity.kt
similarity index 88%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/types/BufferActivity.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/types/BufferActivity.kt
index 5aa12c8ae94baa72219e4ce7ca505f897aa852a6..e5ba3f4e11c1c3eb04c9c0424a73e252cf2e3992 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/BufferActivity.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/types/BufferActivity.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.types
+package info.quasseldroid.protocol.types
 
-import de.kuschku.bitflags.Flag
-import de.kuschku.bitflags.Flags
-import de.kuschku.bitflags.toEnumSet
+import de.justjanne.bitflags.Flag
+import de.justjanne.bitflags.Flags
+import de.justjanne.bitflags.toEnumSet
 
 enum class BufferActivity(
   override val value: UInt,
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/BufferId.kt b/protocol/src/main/java/info/quasseldroid/protocol/types/BufferId.kt
similarity index 95%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/types/BufferId.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/types/BufferId.kt
index 5664ee365ba227709fd4cc9039d8454f8ff08ae0..38c04f463e37105d80800b7506577d4654c8dd21 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/BufferId.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/types/BufferId.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.types
+package info.quasseldroid.protocol.types
 
 private typealias BufferIdType = SignedIdType
 
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/BufferInfo.kt b/protocol/src/main/java/info/quasseldroid/protocol/types/BufferInfo.kt
similarity index 92%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/types/BufferInfo.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/types/BufferInfo.kt
index a3c51646675452015705a0ff2ba6d69a59df910f..d94211e47daab1d2d121c2aa5b9fc7208205b102 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/BufferInfo.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/types/BufferInfo.kt
@@ -17,9 +17,9 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.types
+package info.quasseldroid.protocol.types
 
-import de.kuschku.bitflags.none
+import de.justjanne.bitflags.none
 
 data class BufferInfo(
   val bufferId: BufferId = BufferId(-1),
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/BufferType.kt b/protocol/src/main/java/info/quasseldroid/protocol/types/BufferType.kt
similarity index 88%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/types/BufferType.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/types/BufferType.kt
index cc71f3465a744d2c800f236e5ab54f690aa61e32..0207df84130e276bbff4cad3f433251f58d24b68 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/BufferType.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/types/BufferType.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.types
+package info.quasseldroid.protocol.types
 
-import de.kuschku.bitflags.Flag
-import de.kuschku.bitflags.Flags
-import de.kuschku.bitflags.toEnumSet
+import de.justjanne.bitflags.Flag
+import de.justjanne.bitflags.Flags
+import de.justjanne.bitflags.toEnumSet
 
 enum class BufferType(
   override val value: UShort,
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/DccIpDetectionMode.kt b/protocol/src/main/java/info/quasseldroid/protocol/types/DccIpDetectionMode.kt
similarity index 96%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/types/DccIpDetectionMode.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/types/DccIpDetectionMode.kt
index dc6dc77b4202b0c11bdfd17f49b41dfe2ba1d74a..7f8d17043d0f20a78aba3025d641dae1419204c7 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/DccIpDetectionMode.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/types/DccIpDetectionMode.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.types
+package info.quasseldroid.protocol.types
 
 /**
  * Mode for detecting the outgoing IP
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/DccPortSelectionMode.kt b/protocol/src/main/java/info/quasseldroid/protocol/types/DccPortSelectionMode.kt
similarity index 96%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/types/DccPortSelectionMode.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/types/DccPortSelectionMode.kt
index 705bed66e627ca84713bc46d15cb9e6f977250ae..42ee157be45ef3344036b442020ae96268b11870 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/DccPortSelectionMode.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/types/DccPortSelectionMode.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.types
+package info.quasseldroid.protocol.types
 
 /**
  * Mode for selecting the port range for DCC
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/IdentityId.kt b/protocol/src/main/java/info/quasseldroid/protocol/types/IdentityId.kt
similarity index 95%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/types/IdentityId.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/types/IdentityId.kt
index bd2c4ba04084dcab93caa39fdc6b1fe047a5115d..d24d0367e0da6668667e46e9f84dac42dde2e01c 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/IdentityId.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/types/IdentityId.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.types
+package info.quasseldroid.protocol.types
 
 private typealias IdentityIdType = SignedIdType
 
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/Message.kt b/protocol/src/main/java/info/quasseldroid/protocol/types/Message.kt
similarity index 96%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/types/Message.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/types/Message.kt
index f9e85d4508d29e635ce14cbe7aa3ecf2beb1a317..16739cd8161320e256e0352e44b337c587465cf2 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/Message.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/types/Message.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.types
+package info.quasseldroid.protocol.types
 
 import org.threeten.bp.Instant
 
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/MessageFlag.kt b/protocol/src/main/java/info/quasseldroid/protocol/types/MessageFlag.kt
similarity index 88%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/types/MessageFlag.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/types/MessageFlag.kt
index 86008c5a4522ac4825eff36c493b0d6d1c95575f..5f43db4354e8b2e8d8832922783f16b07cff59bc 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/MessageFlag.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/types/MessageFlag.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.types
+package info.quasseldroid.protocol.types
 
-import de.kuschku.bitflags.Flag
-import de.kuschku.bitflags.Flags
-import de.kuschku.bitflags.toEnumSet
+import de.justjanne.bitflags.Flag
+import de.justjanne.bitflags.Flags
+import de.justjanne.bitflags.toEnumSet
 
 enum class MessageFlag(
   override val value: UInt,
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/MessageType.kt b/protocol/src/main/java/info/quasseldroid/protocol/types/MessageType.kt
similarity index 90%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/types/MessageType.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/types/MessageType.kt
index 4badbe176d3a33288ce995a9752de7d79a4c44a0..fe418098fcd2063d280b4464ac8b134bc37516e1 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/MessageType.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/types/MessageType.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.types
+package info.quasseldroid.protocol.types
 
-import de.kuschku.bitflags.Flag
-import de.kuschku.bitflags.Flags
-import de.kuschku.bitflags.toEnumSet
+import de.justjanne.bitflags.Flag
+import de.justjanne.bitflags.Flags
+import de.justjanne.bitflags.toEnumSet
 
 enum class MessageType(
   override val value: UInt,
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/MsgId.kt b/protocol/src/main/java/info/quasseldroid/protocol/types/MsgId.kt
similarity index 95%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/types/MsgId.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/types/MsgId.kt
index c06ee0e3e7a935625eed2076753c2f4f9798a0e8..b5b3a24ae0f2e4e31d5aaa0162c7a982bbf6df76 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/MsgId.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/types/MsgId.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.types
+package info.quasseldroid.protocol.types
 
 private typealias MsgIdType = SignedId64Type
 
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/NetworkId.kt b/protocol/src/main/java/info/quasseldroid/protocol/types/NetworkId.kt
similarity index 95%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/types/NetworkId.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/types/NetworkId.kt
index 81ee3c8a52afdb048fad0b5605594c79fe453925..5d60b4fb9549ec16e6c71a5156494a7fa76cb872 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/NetworkId.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/types/NetworkId.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.types
+package info.quasseldroid.protocol.types
 
 private typealias NetworkIdType = SignedIdType
 
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/NetworkLayerProtocol.kt b/protocol/src/main/java/info/quasseldroid/protocol/types/NetworkLayerProtocol.kt
similarity index 95%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/types/NetworkLayerProtocol.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/types/NetworkLayerProtocol.kt
index ccae5f617143ddd33b011691b65e7c2ff9fd4930..d0b26730c8d5b4ef8b34b24b631f78d060132154 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/NetworkLayerProtocol.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/types/NetworkLayerProtocol.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.types
+package info.quasseldroid.protocol.types
 
 enum class NetworkLayerProtocol(
   val value: UByte,
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/SignedId.kt b/protocol/src/main/java/info/quasseldroid/protocol/types/SignedId.kt
similarity index 96%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/types/SignedId.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/types/SignedId.kt
index 364ec220645c7ef801eb0bc55050b3aee2c823e6..e30ce878dd8df2dd234b2aba83daf287c96ff6db 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/SignedId.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/types/SignedId.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.types
+package info.quasseldroid.protocol.types
 
 import de.kuschku.codecoverage.Generated
 import java.io.Serializable
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/TimeSpec.kt b/protocol/src/main/java/info/quasseldroid/protocol/types/TimeSpec.kt
similarity index 95%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/types/TimeSpec.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/types/TimeSpec.kt
index 52e07dffcade94e9fa1829685a57949eb947dea7..42d25c0f82b6dd100201b0346ed46d61fda370ec 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/types/TimeSpec.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/types/TimeSpec.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.types
+package info.quasseldroid.protocol.types
 
 enum class TimeSpec(val value: Byte) {
   LocalUnknown(-1),
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/variant/QVariant.kt b/protocol/src/main/java/info/quasseldroid/protocol/variant/QVariant.kt
similarity index 83%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/variant/QVariant.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/variant/QVariant.kt
index ae6ac6ab171abaf409842133bab6c58dff8ee448..50678718a26f797d3a15e626c25831265fd3e715 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/variant/QVariant.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/variant/QVariant.kt
@@ -17,15 +17,15 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.variant
-
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.io.contentToString
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.serializers.QuasselSerializers
-import de.kuschku.libquassel.protocol.serializers.primitive.QtSerializer
-import de.kuschku.libquassel.protocol.serializers.primitive.QuasselSerializer
+package info.quasseldroid.protocol.variant
+
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.io.contentToString
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.serializers.QuasselSerializers
+import info.quasseldroid.protocol.serializers.primitive.QtSerializer
+import info.quasseldroid.protocol.serializers.primitive.QuasselSerializer
 import java.nio.ByteBuffer
 
 typealias QVariant_ = QVariant<*>
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/variant/QtType.kt b/protocol/src/main/java/info/quasseldroid/protocol/variant/QtType.kt
similarity index 97%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/variant/QtType.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/variant/QtType.kt
index e8c4626d747e7f583d794b618029762beaf27e26..70f9eedba1486b8ecfb33e42174e5ea5555594f4 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/variant/QtType.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/variant/QtType.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http:
  */
 
-package de.kuschku.libquassel.protocol.variant
+package info.quasseldroid.protocol.variant
 
 enum class QtType(val id: kotlin.Int) {
   Void(0),
diff --git a/protocol/src/main/java/de/kuschku/libquassel/protocol/variant/QuasselType.kt b/protocol/src/main/java/info/quasseldroid/protocol/variant/QuasselType.kt
similarity index 96%
rename from protocol/src/main/java/de/kuschku/libquassel/protocol/variant/QuasselType.kt
rename to protocol/src/main/java/info/quasseldroid/protocol/variant/QuasselType.kt
index 64f13fa4e5e9652056ec51db0858f247750aa89f..d7ba1e364cfc251de54304078d71e85db8f027be 100644
--- a/protocol/src/main/java/de/kuschku/libquassel/protocol/variant/QuasselType.kt
+++ b/protocol/src/main/java/info/quasseldroid/protocol/variant/QuasselType.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.variant
+package info.quasseldroid.protocol.variant
 
 enum class QuasselType(
   val typeName: String,
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/connection/ConnectionHeaderSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/connection/ConnectionHeaderSerializerTest.kt
similarity index 92%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/connection/ConnectionHeaderSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/connection/ConnectionHeaderSerializerTest.kt
index 0aaf86216359c525f915aac66e3bb6d725202ae8..2249f9ef9c8302975b119b397c60191c88993b47 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/connection/ConnectionHeaderSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/connection/ConnectionHeaderSerializerTest.kt
@@ -17,11 +17,11 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.connection
+package info.quasseldroid.protocol.connection
 
-import de.kuschku.bitflags.of
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.serializerTest
+import de.justjanne.bitflags.of
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.serializerTest
 import org.junit.jupiter.api.Test
 
 class ConnectionHeaderSerializerTest {
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/features/FeatureSetTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/features/FeatureSetTest.kt
similarity index 94%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/features/FeatureSetTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/features/FeatureSetTest.kt
index 90088d3bfba29a2d436d26b56be6297c26e9c7cf..df0c8034268b53a4f34630751e03805121c936a2 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/features/FeatureSetTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/features/FeatureSetTest.kt
@@ -17,10 +17,10 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.features
+package info.quasseldroid.protocol.features
 
-import de.kuschku.bitflags.none
-import de.kuschku.bitflags.of
+import de.justjanne.bitflags.none
+import de.justjanne.bitflags.of
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/io/ChainedByteBufferTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/io/ChainedByteBufferTest.kt
similarity index 96%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/io/ChainedByteBufferTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/io/ChainedByteBufferTest.kt
index b76e10163dfe478dc9867f1e7da8788d361e8b32..5e96454de66cdc7247bbbfd00960719557a98833 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/io/ChainedByteBufferTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/io/ChainedByteBufferTest.kt
@@ -17,15 +17,14 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.io
+package info.quasseldroid.protocol.io
 
-import de.kuschku.libquassel.protocol.testutil.matchers.ByteBufferMatcher
+import info.quasseldroid.protocol.testutil.matchers.ByteBufferMatcher
 import org.hamcrest.MatcherAssert.assertThat
 import org.junit.jupiter.api.Assertions.assertDoesNotThrow
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.assertThrows
-import java.lang.AssertionError
 import java.nio.ByteBuffer
 
 class ChainedByteBufferTest {
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/io/StringEncoderTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/io/StringEncoderTest.kt
similarity index 92%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/io/StringEncoderTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/io/StringEncoderTest.kt
index cb1db12abdb08920535ad112e3aeca8c0bd6892f..2e03e0d7e282510ac35da08b4d9b3da22cef01dd 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/io/StringEncoderTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/io/StringEncoderTest.kt
@@ -17,10 +17,10 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.io
+package info.quasseldroid.protocol.io
 
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.matchers.ByteBufferMatcher
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.matchers.ByteBufferMatcher
 import org.hamcrest.MatcherAssert.assertThat
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/handshake/ClientInitSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/handshake/ClientInitSerializerTest.kt
similarity index 81%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/handshake/ClientInitSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/handshake/ClientInitSerializerTest.kt
index a48194552e6f933678835e7c5ed1b5818b6ffcb8..20c2f967fb16c79728fab1a9b88bc2b3afcf980d 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/handshake/ClientInitSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/handshake/ClientInitSerializerTest.kt
@@ -16,19 +16,15 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.handshake
+package info.quasseldroid.protocol.serializers.handshake
 
-import de.kuschku.bitflags.none
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.features.LegacyFeature
-import de.kuschku.libquassel.protocol.messages.handshake.ClientInit
-import de.kuschku.libquassel.protocol.serializers.HandshakeSerializers
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.serializers.primitive.BoolSerializer
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.handshakeSerializerTest
-import de.kuschku.libquassel.protocol.variant.QtType
-import org.junit.jupiter.api.Assertions
+import de.justjanne.bitflags.none
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.features.LegacyFeature
+import info.quasseldroid.protocol.messages.handshake.ClientInit
+import info.quasseldroid.protocol.serializers.HandshakeSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.handshakeSerializerTest
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.Assertions.assertEquals as assertEquals
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/BoolSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/BoolSerializerTest.kt
similarity index 77%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/BoolSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/BoolSerializerTest.kt
index 4e38c0ba9fa5587172ac3645e71138308751b0ca..aae04c194ca27cbc3464b9c71ba500742856f203 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/BoolSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/BoolSerializerTest.kt
@@ -16,13 +16,12 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.variant.QtType
-import org.junit.jupiter.api.Assertions
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.qtSerializerTest
+import info.quasseldroid.protocol.variant.QtType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/BufferIdSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/BufferIdSerializerTest.kt
similarity index 78%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/BufferIdSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/BufferIdSerializerTest.kt
index 21f9d2cbd431cc64a2432e1215dc7b4450fa73de..a6f291e7f065cf27f5f51ea05f09ada58a9f9e2e 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/BufferIdSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/BufferIdSerializerTest.kt
@@ -16,14 +16,13 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QuasselSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.testutil.quasselSerializerTest
-import de.kuschku.libquassel.protocol.types.BufferId
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.serializers.QuasselSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.quasselSerializerTest
+import info.quasseldroid.protocol.types.BufferId
+import info.quasseldroid.protocol.variant.QuasselType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/BufferInfoSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/BufferInfoSerializerTest.kt
similarity index 69%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/BufferInfoSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/BufferInfoSerializerTest.kt
index 934aef98c95703981b070db872d7fe1ec511190a..7a9c6a3d7015b72e8e271f6fe13489e66617a455 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/BufferInfoSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/BufferInfoSerializerTest.kt
@@ -16,21 +16,18 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.bitflags.none
-import de.kuschku.bitflags.validValues
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.serializers.QuasselSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.quasselSerializerTest
-import de.kuschku.libquassel.protocol.types.BufferId
-import de.kuschku.libquassel.protocol.types.BufferInfo
-import de.kuschku.libquassel.protocol.types.BufferType
-import de.kuschku.libquassel.protocol.types.NetworkId
-import de.kuschku.libquassel.protocol.variant.QtType
-import de.kuschku.libquassel.protocol.variant.QuasselType
-import org.junit.jupiter.api.Assertions
+import de.justjanne.bitflags.none
+import de.justjanne.bitflags.validValues
+import info.quasseldroid.protocol.serializers.QuasselSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.quasselSerializerTest
+import info.quasseldroid.protocol.types.BufferId
+import info.quasseldroid.protocol.types.BufferInfo
+import info.quasseldroid.protocol.types.BufferType
+import info.quasseldroid.protocol.types.NetworkId
+import info.quasseldroid.protocol.variant.QuasselType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/ByteBufferSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/ByteBufferSerializerTest.kt
similarity index 81%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/ByteBufferSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/ByteBufferSerializerTest.kt
index b0671da59481f056ce6582803fe8494fa956eb6a..67bd99c52401b9f12829588b0cc774c3593a55df 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/ByteBufferSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/ByteBufferSerializerTest.kt
@@ -16,14 +16,13 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.matchers.ByteBufferMatcher
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.variant.QtType
-import org.junit.jupiter.api.Assertions
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.matchers.ByteBufferMatcher
+import info.quasseldroid.protocol.testutil.qtSerializerTest
+import info.quasseldroid.protocol.variant.QtType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 import java.nio.ByteBuffer
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/ByteSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/ByteSerializerTest.kt
similarity index 79%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/ByteSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/ByteSerializerTest.kt
index 0a8557f30326992394677a9ceac4ec667a30b093..6ef6bc714db21987453e13ed8d98ebeaa2b98b5f 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/ByteSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/ByteSerializerTest.kt
@@ -16,16 +16,14 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.variant.QtType
-import org.junit.jupiter.api.Assertions
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.qtSerializerTest
+import info.quasseldroid.protocol.variant.QtType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
-import java.nio.ByteBuffer
 import kotlin.experimental.inv
 
 class ByteSerializerTest {
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/DateTimeSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/DateTimeSerializerTest.kt
similarity index 88%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/DateTimeSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/DateTimeSerializerTest.kt
index a93efda966d052672f1e4ed2e5521dddaa89e68b..3821eb635ba71490db3afdd1056807309dbad17d 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/DateTimeSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/DateTimeSerializerTest.kt
@@ -16,14 +16,13 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.matchers.TemporalMatcher
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.variant.QtType
-import org.junit.jupiter.api.Assertions
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.matchers.TemporalMatcher
+import info.quasseldroid.protocol.testutil.qtSerializerTest
+import info.quasseldroid.protocol.variant.QtType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.assertThrows
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/DccIpDetectionModeSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/DccIpDetectionModeSerializerTest.kt
similarity index 75%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/DccIpDetectionModeSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/DccIpDetectionModeSerializerTest.kt
index 901267d4f1e26fcc8dddb65ac5ed9ded56353967..8b069b08af7908f750ea1bc1ed2b536e9180bf23 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/DccIpDetectionModeSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/DccIpDetectionModeSerializerTest.kt
@@ -16,14 +16,13 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QuasselSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.quasselSerializerTest
-import de.kuschku.libquassel.protocol.types.DccIpDetectionMode
-import de.kuschku.libquassel.protocol.types.DccPortSelectionMode
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.serializers.QuasselSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.quasselSerializerTest
+import info.quasseldroid.protocol.types.DccIpDetectionMode
+import info.quasseldroid.protocol.variant.QuasselType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/DccPortSelectionModeSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/DccPortSelectionModeSerializerTest.kt
similarity index 75%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/DccPortSelectionModeSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/DccPortSelectionModeSerializerTest.kt
index aeeca6e97e3445155d278a6639ae5d03c993ed6c..f6ffb7dd589cfbbb19096b315b918a7949c9f431 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/DccPortSelectionModeSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/DccPortSelectionModeSerializerTest.kt
@@ -16,14 +16,13 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QuasselSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.quasselSerializerTest
-import de.kuschku.libquassel.protocol.types.DccIpDetectionMode
-import de.kuschku.libquassel.protocol.types.DccPortSelectionMode
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.serializers.QuasselSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.quasselSerializerTest
+import info.quasseldroid.protocol.types.DccPortSelectionMode
+import info.quasseldroid.protocol.variant.QuasselType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/DoubleSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/DoubleSerializerTest.kt
similarity index 84%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/DoubleSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/DoubleSerializerTest.kt
index 0242bcb3578b6f82da370014b0a81a374a88df3a..c67d69c9d142e1fc6c8b19f66dde0e84abb20a0f 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/DoubleSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/DoubleSerializerTest.kt
@@ -16,16 +16,14 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.variant.QtType
-import org.junit.jupiter.api.Assertions
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.qtSerializerTest
+import info.quasseldroid.protocol.variant.QtType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
-import org.threeten.bp.temporal.Temporal
 
 class DoubleSerializerTest {
   @Test
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/FloatSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/FloatSerializerTest.kt
similarity index 84%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/FloatSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/FloatSerializerTest.kt
index b491e312cb0910f66eb32339a7a46951643b5371..b4978f533a346bf446a614790bed979c7eaf1c70 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/FloatSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/FloatSerializerTest.kt
@@ -16,13 +16,12 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.variant.QtType
-import org.junit.jupiter.api.Assertions
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.qtSerializerTest
+import info.quasseldroid.protocol.variant.QtType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/IdentityIdSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/IdentityIdSerializerTest.kt
similarity index 78%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/IdentityIdSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/IdentityIdSerializerTest.kt
index 34e0fc5b5d3b33f1a40e8e1fd3ee0e519cb07c8b..225cb273e07af5e74f3eb8bc42f7fff6161b5d38 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/IdentityIdSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/IdentityIdSerializerTest.kt
@@ -16,14 +16,13 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QuasselSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.testutil.quasselSerializerTest
-import de.kuschku.libquassel.protocol.types.IdentityId
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.serializers.QuasselSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.quasselSerializerTest
+import info.quasseldroid.protocol.types.IdentityId
+import info.quasseldroid.protocol.variant.QuasselType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/IntSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/IntSerializerTest.kt
similarity index 80%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/IntSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/IntSerializerTest.kt
index 21bd1bb8d4afe820227abb399c6c17b94aeb211d..53aa3c9a9af031ef4814c86a1c41fda0173f8ca2 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/IntSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/IntSerializerTest.kt
@@ -16,13 +16,12 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.variant.QtType
-import org.junit.jupiter.api.Assertions
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.qtSerializerTest
+import info.quasseldroid.protocol.variant.QtType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/LongSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/LongSerializerTest.kt
similarity index 81%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/LongSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/LongSerializerTest.kt
index 0c9fec88cd80008ddd8a2a4d13c7f137615e1e85..a1f20b4132bd8d7e3005913d612b568261eb6544 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/LongSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/LongSerializerTest.kt
@@ -16,13 +16,12 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not,see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.variant.QtType
-import org.junit.jupiter.api.Assertions
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.qtSerializerTest
+import info.quasseldroid.protocol.variant.QtType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/MessageSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/MessageSerializerTest.kt
similarity index 88%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/MessageSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/MessageSerializerTest.kt
index e07503e168fe06ba5910cf7c1843b454137e22d0..75f0342a4d1a78a1c8ba4f9034de6b93b17bb710 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/MessageSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/MessageSerializerTest.kt
@@ -17,23 +17,19 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.bitflags.none
-import de.kuschku.bitflags.validValues
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.serializers.QuasselSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.quasselSerializerTest
-import de.kuschku.libquassel.protocol.types.*
-import de.kuschku.libquassel.protocol.variant.QtType
-import de.kuschku.libquassel.protocol.variant.QuasselType
-import org.junit.jupiter.api.Assertions
+import de.justjanne.bitflags.none
+import de.justjanne.bitflags.validValues
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.serializers.QuasselSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.quasselSerializerTest
+import info.quasseldroid.protocol.types.*
+import info.quasseldroid.protocol.variant.QuasselType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 import org.threeten.bp.Instant
-import java.nio.ByteBuffer
 
 class MessageSerializerTest {
   @Test
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/MsgIdSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/MsgIdSerializerTest.kt
similarity index 80%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/MsgIdSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/MsgIdSerializerTest.kt
index ce2107d82a1b1ee99abab783903bb076170a4dd2..957f9c5ad084cb7855982297886319efecc015af 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/MsgIdSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/MsgIdSerializerTest.kt
@@ -16,14 +16,14 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.serializers.QuasselSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.quasselSerializerTest
-import de.kuschku.libquassel.protocol.types.MsgId
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.serializers.QuasselSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.quasselSerializerTest
+import info.quasseldroid.protocol.types.MsgId
+import info.quasseldroid.protocol.variant.QuasselType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/NetworkIdSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/NetworkIdSerializerTest.kt
similarity index 78%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/NetworkIdSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/NetworkIdSerializerTest.kt
index 996bc8975fcffcced785c307517e9739f553cbe6..58ba01e13b28249dc520a56579be6f58fa7bcda3 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/NetworkIdSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/NetworkIdSerializerTest.kt
@@ -16,14 +16,13 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QuasselSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.testutil.quasselSerializerTest
-import de.kuschku.libquassel.protocol.types.NetworkId
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.serializers.QuasselSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.quasselSerializerTest
+import info.quasseldroid.protocol.types.NetworkId
+import info.quasseldroid.protocol.variant.QuasselType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/PeerPtrSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/PeerPtrSerializerTest.kt
similarity index 80%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/PeerPtrSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/PeerPtrSerializerTest.kt
index 0018e5a642e01dd52a893f433a9a7380540555b1..bd6f61e0a7815dd11832942bfd9d1a9772554482 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/PeerPtrSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/PeerPtrSerializerTest.kt
@@ -16,14 +16,13 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.serializers.QuasselSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.quasselSerializerTest
-import de.kuschku.libquassel.protocol.types.MsgId
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.serializers.QuasselSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.quasselSerializerTest
+import info.quasseldroid.protocol.variant.QuasselType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/QCharSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/QCharSerializerTest.kt
similarity index 83%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/QCharSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/QCharSerializerTest.kt
index b152f1f408084bd928b4175496dcb7afcf5a770c..eaa1685e67439b94a28465e90832f85d9fad5136 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/QCharSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/QCharSerializerTest.kt
@@ -16,14 +16,13 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.matchers.BomMatcherChar
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.variant.QtType
-import org.junit.jupiter.api.Assertions
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.matchers.BomMatcherChar
+import info.quasseldroid.protocol.testutil.qtSerializerTest
+import info.quasseldroid.protocol.variant.QtType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/QHostAddressSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/QHostAddressSerializerTest.kt
similarity index 84%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/QHostAddressSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/QHostAddressSerializerTest.kt
index 08de96efb92b3dbba58ab0b2de97f76ef6dbccc5..9e7ce464289e67ed22629f8aa3acd9c3ee738dae 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/QHostAddressSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/QHostAddressSerializerTest.kt
@@ -16,12 +16,12 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QuasselSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.quasselSerializerTest
-import de.kuschku.libquassel.protocol.variant.QuasselType
+import info.quasseldroid.protocol.serializers.QuasselSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.quasselSerializerTest
+import info.quasseldroid.protocol.variant.QuasselType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 import java.net.Inet4Address
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/QVariantListSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/QVariantListSerializerTest.kt
similarity index 75%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/QVariantListSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/QVariantListSerializerTest.kt
index 4bbff85229e2034ab7a42803f44081387af3ac3f..fddad7d8497e6b35d472cf12de4f0eb2cf67501c 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/QVariantListSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/QVariantListSerializerTest.kt
@@ -16,17 +16,14 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.matchers.MapMatcher
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.variant.QVariantList
-import de.kuschku.libquassel.protocol.variant.QVariantMap
-import de.kuschku.libquassel.protocol.variant.QtType
-import de.kuschku.libquassel.protocol.variant.qVariant
-import org.junit.jupiter.api.Assertions
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.qtSerializerTest
+import info.quasseldroid.protocol.variant.QVariantList
+import info.quasseldroid.protocol.variant.QtType
+import info.quasseldroid.protocol.variant.qVariant
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/QVariantMapSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/QVariantMapSerializerTest.kt
similarity index 82%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/QVariantMapSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/QVariantMapSerializerTest.kt
index 04d60612ce7d65639caa3694052438db111dcfe9..8c5699260d6bfa6930e181aa8c713354ccfb31f2 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/QVariantMapSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/QVariantMapSerializerTest.kt
@@ -16,16 +16,15 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.matchers.MapMatcher
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.variant.QVariantMap
-import de.kuschku.libquassel.protocol.variant.QtType
-import de.kuschku.libquassel.protocol.variant.qVariant
-import org.junit.jupiter.api.Assertions
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.matchers.MapMatcher
+import info.quasseldroid.protocol.testutil.qtSerializerTest
+import info.quasseldroid.protocol.variant.QVariantMap
+import info.quasseldroid.protocol.variant.QtType
+import info.quasseldroid.protocol.variant.qVariant
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/QVariantSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/QVariantSerializerTest.kt
similarity index 83%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/QVariantSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/QVariantSerializerTest.kt
index 483a8782eb2d135c481957a9de349c899e8faa61..52403ebc19c38cf75df6b337c9cf2f76805b893e 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/QVariantSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/QVariantSerializerTest.kt
@@ -16,14 +16,14 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.NoSerializerForTypeException
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.deserialize
-import de.kuschku.libquassel.protocol.variant.QVariant_
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.serializers.NoSerializerForTypeException
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.deserialize
+import info.quasseldroid.protocol.variant.QVariant_
+import info.quasseldroid.protocol.variant.QtType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.assertThrows
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/ShortSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/ShortSerializerTest.kt
similarity index 81%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/ShortSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/ShortSerializerTest.kt
index cd08320030b58b49c6a73ac29d155c731bdfbf7c..025d207c706ce395f31adb2e355888c54d061a47 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/ShortSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/ShortSerializerTest.kt
@@ -16,13 +16,12 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.variant.QtType
-import org.junit.jupiter.api.Assertions
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.qtSerializerTest
+import info.quasseldroid.protocol.variant.QtType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 import kotlin.experimental.inv
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/StringSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/StringSerializerTest.kt
similarity index 95%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/StringSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/StringSerializerTest.kt
index 98484c46409b1b216c5c3b050fbafe5cbf2104b8..282e8245b6331f0c28c6f699378f15ce884bcc58 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/StringSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/StringSerializerTest.kt
@@ -16,16 +16,16 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
-
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.deserialize
-import de.kuschku.libquassel.protocol.testutil.matchers.BomMatcherString
-import de.kuschku.libquassel.protocol.testutil.matchers.ByteBufferMatcher
-import de.kuschku.libquassel.protocol.testutil.testQtSerializerDirect
-import de.kuschku.libquassel.protocol.testutil.testQtSerializerVariant
-import de.kuschku.libquassel.protocol.variant.QtType
+package info.quasseldroid.protocol.serializers.primitive
+
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.deserialize
+import info.quasseldroid.protocol.testutil.matchers.BomMatcherString
+import info.quasseldroid.protocol.testutil.matchers.ByteBufferMatcher
+import info.quasseldroid.protocol.testutil.testQtSerializerDirect
+import info.quasseldroid.protocol.testutil.testQtSerializerVariant
+import info.quasseldroid.protocol.variant.QtType
 import org.hamcrest.MatcherAssert.assertThat
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/UByteSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/UByteSerializerTest.kt
similarity index 80%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/UByteSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/UByteSerializerTest.kt
index df63eeca93f79f2f015ec7a39eae1d1ae6015005..0d1b29f4e6a9c1f547d745c94c5a0376e3aaa656 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/UByteSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/UByteSerializerTest.kt
@@ -16,13 +16,12 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.variant.QtType
-import org.junit.jupiter.api.Assertions
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.qtSerializerTest
+import info.quasseldroid.protocol.variant.QtType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/UIntSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/UIntSerializerTest.kt
similarity index 81%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/UIntSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/UIntSerializerTest.kt
index 5cdd0b78e09759ede9e875153ec3e7a019d3bebf..a1ff805996784174de2cdf52f3a3be99db1bad7f 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/UIntSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/UIntSerializerTest.kt
@@ -16,13 +16,12 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.variant.QtType
-import org.junit.jupiter.api.Assertions
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.qtSerializerTest
+import info.quasseldroid.protocol.variant.QtType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/ULongSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/ULongSerializerTest.kt
similarity index 82%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/ULongSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/ULongSerializerTest.kt
index 53db1a21d0cd159c751fe2605fe218b22566bde0..3eead2bfd220297d19e84fc10995b5d40795e9c4 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/ULongSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/ULongSerializerTest.kt
@@ -16,13 +16,12 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.variant.QtType
-import org.junit.jupiter.api.Assertions
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.qtSerializerTest
+import info.quasseldroid.protocol.variant.QtType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/UShortSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/UShortSerializerTest.kt
similarity index 81%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/UShortSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/UShortSerializerTest.kt
index 9d7cfeb2794b9d2b9c734991650c090e29ffdadb..44848330980e318ac2216b60ab4de2e1ac5977cd 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/UShortSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/UShortSerializerTest.kt
@@ -16,13 +16,12 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.variant.QtType
-import org.junit.jupiter.api.Assertions
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.qtSerializerTest
+import info.quasseldroid.protocol.variant.QtType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/VoidSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/VoidSerializerTest.kt
similarity index 77%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/VoidSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/VoidSerializerTest.kt
index 76db87989adba72d2f2ca9c628dabe2941ec1d5a..b5763b2fe68ceb5784da0ef4724d4f7f6a514f05 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/serializers/primitive/VoidSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/serializers/primitive/VoidSerializerTest.kt
@@ -16,12 +16,12 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.serializers.primitive
+package info.quasseldroid.protocol.serializers.primitive
 
-import de.kuschku.libquassel.protocol.serializers.QtSerializers
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.testutil.qtSerializerTest
-import de.kuschku.libquassel.protocol.variant.QtType
+import info.quasseldroid.protocol.serializers.QtSerializers
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.testutil.qtSerializerTest
+import info.quasseldroid.protocol.variant.QtType
 import org.junit.jupiter.api.Assertions.assertEquals
 import org.junit.jupiter.api.Test
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/byteBufferOf.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/byteBufferOf.kt
similarity index 95%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/byteBufferOf.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/byteBufferOf.kt
index 61e196dd7740ac223392755d892b1c6e14493777..62f5d70288e9c2d975e7d9973cf4987463549e02 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/byteBufferOf.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/byteBufferOf.kt
@@ -16,7 +16,7 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.testutil
+package info.quasseldroid.protocol.testutil
 
 import java.nio.ByteBuffer
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/deserialize.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/deserialize.kt
similarity index 83%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/deserialize.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/deserialize.kt
index aec66f4049da7457ebd7a47b0aef4a2eb21b8026..0191234d3da0c163936b103c66cbe2ab0a2b3790 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/deserialize.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/deserialize.kt
@@ -16,13 +16,12 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.testutil
+package info.quasseldroid.protocol.testutil
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.serializers.handshake.HandshakeSerializer
-import de.kuschku.libquassel.protocol.serializers.primitive.HandshakeMapSerializer
-import de.kuschku.libquassel.protocol.serializers.primitive.QtSerializer
-import de.kuschku.libquassel.protocol.serializers.primitive.Serializer
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.serializers.handshake.HandshakeSerializer
+import info.quasseldroid.protocol.serializers.primitive.HandshakeMapSerializer
+import info.quasseldroid.protocol.serializers.primitive.Serializer
 import org.hamcrest.Matcher
 import org.hamcrest.MatcherAssert.assertThat
 import org.junit.jupiter.api.Assertions.assertEquals
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/handshakeSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/handshakeSerializerTest.kt
similarity index 90%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/handshakeSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/handshakeSerializerTest.kt
index 2139c07a507c28cab8b366e7344301bae0a86354..5cbf4d92ef3c45bc1febff067cb8f10f375d69c2 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/handshakeSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/handshakeSerializerTest.kt
@@ -16,10 +16,10 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.testutil
+package info.quasseldroid.protocol.testutil
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.serializers.handshake.HandshakeSerializer
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.serializers.handshake.HandshakeSerializer
 import org.hamcrest.Matcher
 import java.nio.ByteBuffer
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/matchers/BomMatcherChar.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/matchers/BomMatcherChar.kt
similarity index 95%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/matchers/BomMatcherChar.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/matchers/BomMatcherChar.kt
index e128e8f68b36a41b68456d626f3fd0aa15283b67..172700bc235c92ef715cacc2eb83061500ffd7d2 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/matchers/BomMatcherChar.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/matchers/BomMatcherChar.kt
@@ -16,7 +16,7 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.testutil.matchers
+package info.quasseldroid.protocol.testutil.matchers
 
 import org.hamcrest.BaseMatcher
 import org.hamcrest.Description
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/matchers/BomMatcherString.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/matchers/BomMatcherString.kt
similarity index 95%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/matchers/BomMatcherString.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/matchers/BomMatcherString.kt
index ac9e7121c75ee1eccedb9f3c04fe944235d30b27..898c3c049f97cd59528f28bcdfbdd7bc2c4b5b24 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/matchers/BomMatcherString.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/matchers/BomMatcherString.kt
@@ -16,7 +16,7 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.testutil.matchers
+package info.quasseldroid.protocol.testutil.matchers
 
 import org.hamcrest.BaseMatcher
 import org.hamcrest.Description
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/matchers/ByteBufferMatcher.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/matchers/ByteBufferMatcher.kt
similarity index 89%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/matchers/ByteBufferMatcher.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/matchers/ByteBufferMatcher.kt
index 69ab7faf85f051c5665514cfe0e85cd360664724..1ac3a6ad73a617b49dfa0a7054195df5efc30a81 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/matchers/ByteBufferMatcher.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/matchers/ByteBufferMatcher.kt
@@ -16,14 +16,13 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.testutil.matchers
+package info.quasseldroid.protocol.testutil.matchers
 
-import de.kuschku.libquassel.protocol.io.contentToString
-import de.kuschku.libquassel.protocol.io.isEmpty
+import info.quasseldroid.protocol.io.contentToString
+import info.quasseldroid.protocol.io.isEmpty
 import org.hamcrest.BaseMatcher
 import org.hamcrest.Description
 import java.nio.ByteBuffer
-import kotlin.math.exp
 
 class ByteBufferMatcher(buffer: ByteBuffer?) : BaseMatcher<ByteBuffer>() {
   private val expected = buffer?.let { original ->
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/matchers/MapMatcher.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/matchers/MapMatcher.kt
similarity index 96%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/matchers/MapMatcher.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/matchers/MapMatcher.kt
index 4ca0dc72e3cb8d481cd209be9721dead1c772e08..749e268b3365cfa194fee204f14d32c9b0251375 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/matchers/MapMatcher.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/matchers/MapMatcher.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.testutil.matchers
+package info.quasseldroid.protocol.testutil.matchers
 
 import org.hamcrest.BaseMatcher
 import org.hamcrest.Description
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/matchers/TemporalMatcher.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/matchers/TemporalMatcher.kt
similarity index 96%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/matchers/TemporalMatcher.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/matchers/TemporalMatcher.kt
index 848e016e9d8dbce4568c621e40df8dace3ea279b..e2f1cc879ea248b6d66463f70a9ca4f632b80bdf 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/matchers/TemporalMatcher.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/matchers/TemporalMatcher.kt
@@ -16,7 +16,7 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.testutil.matchers
+package info.quasseldroid.protocol.testutil.matchers
 
 import org.hamcrest.BaseMatcher
 import org.hamcrest.Description
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/qtSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/qtSerializerTest.kt
similarity index 90%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/qtSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/qtSerializerTest.kt
index 80b11b526411abbfea3555d6e2021a24c4c05832..7a5244d8106be424e8b1bf69601b8c1c3a4bbdb4 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/qtSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/qtSerializerTest.kt
@@ -16,10 +16,10 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.testutil
+package info.quasseldroid.protocol.testutil
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.serializers.primitive.QtSerializer
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.serializers.primitive.QtSerializer
 import org.hamcrest.Matcher
 import java.nio.ByteBuffer
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/quasselSerializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/quasselSerializerTest.kt
similarity index 90%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/quasselSerializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/quasselSerializerTest.kt
index eae1a5751a87ee74c91f9474063135502d1a1a26..dc203a9aad61bb0774b22c6662969260bcd5699d 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/quasselSerializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/quasselSerializerTest.kt
@@ -16,10 +16,10 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.testutil
+package info.quasseldroid.protocol.testutil
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.serializers.primitive.QuasselSerializer
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.serializers.primitive.QuasselSerializer
 import org.hamcrest.Matcher
 import java.nio.ByteBuffer
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/serialize.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/serialize.kt
similarity index 71%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/serialize.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/serialize.kt
index d389756f23cea6bc0589c9dea36fc3b08cef9a63..4b44e36f027d09c23edcb5bf53bf0e73ea9486d2 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/serialize.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/serialize.kt
@@ -16,18 +16,15 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.testutil
+package info.quasseldroid.protocol.testutil
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.serializers.handshake.HandshakeSerializer
-import de.kuschku.libquassel.protocol.serializers.primitive.HandshakeMapSerializer
-import de.kuschku.libquassel.protocol.serializers.primitive.QtSerializer
-import de.kuschku.libquassel.protocol.serializers.primitive.Serializer
-import de.kuschku.libquassel.protocol.testutil.matchers.ByteBufferMatcher
-import org.hamcrest.Matcher
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.serializers.handshake.HandshakeSerializer
+import info.quasseldroid.protocol.serializers.primitive.HandshakeMapSerializer
+import info.quasseldroid.protocol.serializers.primitive.Serializer
+import info.quasseldroid.protocol.testutil.matchers.ByteBufferMatcher
 import org.hamcrest.MatcherAssert.assertThat
-import org.junit.jupiter.api.Assertions.assertEquals
 import java.nio.ByteBuffer
 
 fun <T> serialize(
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/serializerTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/serializerTest.kt
similarity index 89%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/serializerTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/serializerTest.kt
index e6d4299d885754bfab68fffb27efb5fb20e70562..15e2c4e6862f3bb0fdf475ae846f48a9acaaa19c 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/serializerTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/serializerTest.kt
@@ -16,10 +16,10 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.testutil
+package info.quasseldroid.protocol.testutil
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.serializers.primitive.Serializer
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.serializers.primitive.Serializer
 import org.hamcrest.Matcher
 import java.nio.ByteBuffer
 
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/testHandshakeSerializerDirect.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/testHandshakeSerializerDirect.kt
similarity index 89%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/testHandshakeSerializerDirect.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/testHandshakeSerializerDirect.kt
index 45208f297c460ddd1b9d9720fc0a907735c8d30f..82beecf2c38d6eb5b25b46219b8cad45b10c6bef 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/testHandshakeSerializerDirect.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/testHandshakeSerializerDirect.kt
@@ -16,9 +16,9 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.testutil
+package info.quasseldroid.protocol.testutil
 
-import de.kuschku.libquassel.protocol.serializers.handshake.HandshakeSerializer
+import info.quasseldroid.protocol.serializers.handshake.HandshakeSerializer
 import org.hamcrest.Matcher
 import org.hamcrest.MatcherAssert.assertThat
 import org.junit.jupiter.api.Assertions.assertEquals
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/testHandshakeSerializerEncoded.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/testHandshakeSerializerEncoded.kt
similarity index 81%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/testHandshakeSerializerEncoded.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/testHandshakeSerializerEncoded.kt
index b511b770536cc3855231764d8737fd7df6fc8baa..d16dc072c79f89e577774f369f9f726dc788f731 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/testHandshakeSerializerEncoded.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/testHandshakeSerializerEncoded.kt
@@ -16,12 +16,12 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.testutil
+package info.quasseldroid.protocol.testutil
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.serializers.handshake.HandshakeSerializer
-import de.kuschku.libquassel.protocol.serializers.primitive.HandshakeMapSerializer
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.serializers.handshake.HandshakeSerializer
+import info.quasseldroid.protocol.serializers.primitive.HandshakeMapSerializer
 import org.hamcrest.Matcher
 import org.hamcrest.MatcherAssert.assertThat
 import org.junit.jupiter.api.Assertions.assertEquals
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/testQtSerializerDirect.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/testQtSerializerDirect.kt
similarity index 82%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/testQtSerializerDirect.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/testQtSerializerDirect.kt
index a07f194fe10720c0e896611dc085cf0699382f07..6280db52c9d7d6a6f7bef33141a9c9e8e0b3597f 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/testQtSerializerDirect.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/testQtSerializerDirect.kt
@@ -16,12 +16,12 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.testutil
+package info.quasseldroid.protocol.testutil
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.io.contentToString
-import de.kuschku.libquassel.protocol.serializers.primitive.QtSerializer
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.io.contentToString
+import info.quasseldroid.protocol.serializers.primitive.QtSerializer
 import org.hamcrest.Matcher
 import org.hamcrest.MatcherAssert.assertThat
 import org.junit.jupiter.api.Assertions.assertEquals
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/testQtSerializerVariant.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/testQtSerializerVariant.kt
similarity index 79%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/testQtSerializerVariant.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/testQtSerializerVariant.kt
index 9ddb5bfd68943809e54521fbb6d25eeda255c8a1..70726cb56a4f6ca3aec579e3a53278744ea63f62 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/testQtSerializerVariant.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/testQtSerializerVariant.kt
@@ -16,13 +16,13 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.testutil
+package info.quasseldroid.protocol.testutil
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.serializers.primitive.QVariantSerializer
-import de.kuschku.libquassel.protocol.serializers.primitive.QtSerializer
-import de.kuschku.libquassel.protocol.variant.QVariant
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.serializers.primitive.QVariantSerializer
+import info.quasseldroid.protocol.serializers.primitive.QtSerializer
+import info.quasseldroid.protocol.variant.QVariant
 import org.hamcrest.Matcher
 import org.hamcrest.MatcherAssert.assertThat
 import org.junit.jupiter.api.Assertions.assertEquals
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/testQuasselSerializerDirect.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/testQuasselSerializerDirect.kt
similarity index 84%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/testQuasselSerializerDirect.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/testQuasselSerializerDirect.kt
index 18aa2205783afafa1eecfe4afef5434d7d309339..239081a94bfbdf6f5ea35f47a49b56ee36bbee8b 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/testQuasselSerializerDirect.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/testQuasselSerializerDirect.kt
@@ -16,11 +16,11 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.testutil
+package info.quasseldroid.protocol.testutil
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.serializers.primitive.QuasselSerializer
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.serializers.primitive.QuasselSerializer
 import org.hamcrest.Matcher
 import org.hamcrest.MatcherAssert.assertThat
 import org.junit.jupiter.api.Assertions.assertEquals
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/testQuasselSerializerVariant.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/testQuasselSerializerVariant.kt
similarity index 79%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/testQuasselSerializerVariant.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/testQuasselSerializerVariant.kt
index 1cbff786c571140c93d97db5d28c496a43e20190..adcfcf01764cb55318c0f973b3c9bd62af6ce2ee 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/testutil/testQuasselSerializerVariant.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/testutil/testQuasselSerializerVariant.kt
@@ -16,13 +16,13 @@
  * You should have received a copy of the GNU General Public License along
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package de.kuschku.libquassel.protocol.testutil
+package info.quasseldroid.protocol.testutil
 
-import de.kuschku.libquassel.protocol.features.FeatureSet
-import de.kuschku.libquassel.protocol.io.ChainedByteBuffer
-import de.kuschku.libquassel.protocol.serializers.primitive.QVariantSerializer
-import de.kuschku.libquassel.protocol.serializers.primitive.QuasselSerializer
-import de.kuschku.libquassel.protocol.variant.QVariant
+import info.quasseldroid.protocol.features.FeatureSet
+import info.quasseldroid.protocol.io.ChainedByteBuffer
+import info.quasseldroid.protocol.serializers.primitive.QVariantSerializer
+import info.quasseldroid.protocol.serializers.primitive.QuasselSerializer
+import info.quasseldroid.protocol.variant.QVariant
 import org.hamcrest.Matcher
 import org.hamcrest.MatcherAssert.assertThat
 import org.junit.jupiter.api.Assertions.assertEquals
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/types/SignedIdTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/types/SignedIdTest.kt
similarity index 98%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/types/SignedIdTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/types/SignedIdTest.kt
index c3520885eb0b21cedcbbeae979f59eba373e3b72..94779e693fe1af452406f6cfe78cdb8b1033b864 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/types/SignedIdTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/types/SignedIdTest.kt
@@ -17,7 +17,7 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.types
+package info.quasseldroid.protocol.types
 
 import org.junit.jupiter.api.Assertions.*
 import org.junit.jupiter.api.Test
diff --git a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/variant/QVariantTest.kt b/protocol/src/test/kotlin/info/quasseldroid/protocol/variant/QVariantTest.kt
similarity index 83%
rename from protocol/src/test/kotlin/de/kuschku/libquassel/protocol/variant/QVariantTest.kt
rename to protocol/src/test/kotlin/info/quasseldroid/protocol/variant/QVariantTest.kt
index b55e43f4b4b677e0ea09188e604628d552595f34..7a94751ed11c334b68b87fb241a52cd5f6c09515 100644
--- a/protocol/src/test/kotlin/de/kuschku/libquassel/protocol/variant/QVariantTest.kt
+++ b/protocol/src/test/kotlin/info/quasseldroid/protocol/variant/QVariantTest.kt
@@ -17,12 +17,10 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-package de.kuschku.libquassel.protocol.variant
+package info.quasseldroid.protocol.variant
 
-import de.kuschku.libquassel.protocol.testutil.byteBufferOf
-import de.kuschku.libquassel.protocol.types.BufferId
-import de.kuschku.libquassel.protocol.variant.QtType
-import de.kuschku.libquassel.protocol.variant.qVariant
+import info.quasseldroid.protocol.testutil.byteBufferOf
+import info.quasseldroid.protocol.types.BufferId
 import org.junit.jupiter.api.Assertions.*
 import org.junit.jupiter.api.Test
 
diff --git a/settings.gradle.kts b/settings.gradle.kts
index e1c2b62c8ec8074aebd8458566a999998f5102bd..a881985c1d9d4f406de5013f962743b2aebe76e2 100644
--- a/settings.gradle.kts
+++ b/settings.gradle.kts
@@ -22,9 +22,15 @@ rootProject.buildFileName = "build.gradle.kts"
 
 include(
   ":app",
-  ":bitflags",
   ":protocol",
   ":coverage-annotations",
   ":libquassel",
   ":ci-containers"
 )
+
+pluginManagement {
+  repositories {
+    mavenLocal()
+    gradlePluginPortal()
+  }
+}