diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 1af10372b251d03ff0b7d45ebe5c4a1acf162ab6..8bff055b2372691929cdcd57f268883e791636e7 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -1,20 +1,22 @@
-import com.android.build.gradle.AppExtension
 import org.gradle.api.Project
+import java.io.FileInputStream
+import java.util.*
+import org.gradle.api.artifacts.ExternalModuleDependency
 import org.gradle.kotlin.dsl.*
 import org.jetbrains.kotlin.gradle.plugin.KaptExtension
 import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
 import java.io.ByteArrayOutputStream
 import java.util.*
 
-apply {
-  plugin("com.android.application")
-  plugin("kotlin-android")
-  plugin("kotlin-kapt")
+plugins {
+  id("com.android.application")
+  kotlin("android")
+  kotlin("kapt")
 }
 
 android {
   compileSdkVersion(26)
-  buildToolsVersion("26.0.1")
+  buildToolsVersion("26.0.2")
 
   signingConfigs {
     val signing = project.rootProject.properties("signing.properties")
@@ -173,380 +175,3 @@ fun appCompat(module: String, version: String? = null)
  */
 fun appArch(module: String, submodule: String, version: String? = null)
   = "android.arch.$module:$submodule:${version ?: appArchVersion}"
-
-fun Project.android(f: AppExtension.() -> Unit)
-  = configure(f)
-
-fun Project.kapt(f: KaptExtension.() -> Unit)
-  = configure(f)
-
-fun DependencyHandlerScope.androidJacocoAgent(dependencyNotation: Any)
-  = "androidJacocoAgent"(dependencyNotation)
-
-fun DependencyHandlerScope.androidJacocoAgent(dependencyNotation: String,
-                                              dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "androidJacocoAgent"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.androidJacocoAnt(dependencyNotation: Any)
-  = "androidJacocoAnt"(dependencyNotation)
-
-fun DependencyHandlerScope.androidJacocoAnt(dependencyNotation: String,
-                                            dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "androidJacocoAnt"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.androidTestAnnotationProcessor(dependencyNotation: Any)
-  = "androidTestAnnotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.androidTestAnnotationProcessor(dependencyNotation: String,
-                                                          dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "androidTestAnnotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.androidTestApk(dependencyNotation: Any)
-  = "androidTestApk"(dependencyNotation)
-
-fun DependencyHandlerScope.androidTestApk(dependencyNotation: String,
-                                          dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "androidTestApk"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.androidTestImplementation(dependencyNotation: Any)
-  = "androidTestImplementation"(dependencyNotation)
-
-fun DependencyHandlerScope.androidTestImplementation(dependencyNotation: String,
-                                                     dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "androidTestImplementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.androidTestJackPlugin(dependencyNotation: Any)
-  = "androidTestJackPlugin"(dependencyNotation)
-
-fun DependencyHandlerScope.androidTestJackPlugin(dependencyNotation: String,
-                                                 dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "androidTestJackPlugin"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.androidTestProvided(dependencyNotation: Any)
-  = "androidTestProvided"(dependencyNotation)
-
-fun DependencyHandlerScope.androidTestProvided(dependencyNotation: String,
-                                               dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "androidTestProvided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.androidTestWearApp(dependencyNotation: Any)
-  = "androidTestWearApp"(dependencyNotation)
-
-fun DependencyHandlerScope.androidTestWearApp(dependencyNotation: String,
-                                              dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "androidTestWearApp"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.annotationProcessor(dependencyNotation: Any)
-  = "annotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.annotationProcessor(dependencyNotation: String,
-                                               dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "annotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.apk(dependencyNotation: Any)
-  = "apk"(dependencyNotation)
-
-fun DependencyHandlerScope.apk(dependencyNotation: String,
-                               dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "apk"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.archives(dependencyNotation: Any)
-  = "archives"(dependencyNotation)
-
-fun DependencyHandlerScope.archives(dependencyNotation: String,
-                                    dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "archives"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.implementation(dependencyNotation: Any)
-  = "implementation"(dependencyNotation)
-
-fun DependencyHandlerScope.implementation(dependencyNotation: String,
-                                          dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "implementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.debugAnnotationProcessor(dependencyNotation: Any)
-  = "debugAnnotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.debugAnnotationProcessor(dependencyNotation: String,
-                                                    dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "debugAnnotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.debugApk(dependencyNotation: Any)
-  = "debugApk"(dependencyNotation)
-
-fun DependencyHandlerScope.debugApk(dependencyNotation: String,
-                                    dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "debugApk"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.debugImplementation(dependencyNotation: Any)
-  = "debugImplementation"(dependencyNotation)
-
-fun DependencyHandlerScope.debugImplementation(dependencyNotation: String,
-                                               dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "debugImplementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.debugJackPlugin(dependencyNotation: Any)
-  = "debugJackPlugin"(dependencyNotation)
-
-fun DependencyHandlerScope.debugJackPlugin(dependencyNotation: String,
-                                           dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "debugJackPlugin"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.debugProvided(dependencyNotation: Any)
-  = "debugProvided"(dependencyNotation)
-
-fun DependencyHandlerScope.debugProvided(dependencyNotation: String,
-                                         dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "debugProvided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.debugWearApp(dependencyNotation: Any)
-  = "debugWearApp"(dependencyNotation)
-
-fun DependencyHandlerScope.debugWearApp(dependencyNotation: String,
-                                        dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "debugWearApp"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.default(dependencyNotation: Any)
-  = "default"(dependencyNotation)
-
-fun DependencyHandlerScope.default(dependencyNotation: String,
-                                   dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "default"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.jackPlugin(dependencyNotation: Any)
-  = "jackPlugin"(dependencyNotation)
-
-fun DependencyHandlerScope.jackPlugin(dependencyNotation: String,
-                                      dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "jackPlugin"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kapt(dependencyNotation: Any)
-  = "kapt"(dependencyNotation)
-
-fun DependencyHandlerScope.kapt(dependencyNotation: String,
-                                dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kapt"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kaptAndroidTest(dependencyNotation: Any)
-  = "kaptAndroidTest"(dependencyNotation)
-
-fun DependencyHandlerScope.kaptAndroidTest(dependencyNotation: String,
-                                           dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kaptAndroidTest"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kaptDebug(dependencyNotation: Any)
-  = "kaptDebug"(dependencyNotation)
-
-fun DependencyHandlerScope.kaptDebug(dependencyNotation: String,
-                                     dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kaptDebug"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kaptRelease(dependencyNotation: Any)
-  = "kaptRelease"(dependencyNotation)
-
-fun DependencyHandlerScope.kaptRelease(dependencyNotation: String,
-                                       dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kaptRelease"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kaptTest(dependencyNotation: Any)
-  = "kaptTest"(dependencyNotation)
-
-fun DependencyHandlerScope.kaptTest(dependencyNotation: String,
-                                    dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kaptTest"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kaptTestDebug(dependencyNotation: Any)
-  = "kaptTestDebug"(dependencyNotation)
-
-fun DependencyHandlerScope.kaptTestDebug(dependencyNotation: String,
-                                         dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kaptTestDebug"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kaptTestRelease(dependencyNotation: Any)
-  = "kaptTestRelease"(dependencyNotation)
-
-fun DependencyHandlerScope.kaptTestRelease(dependencyNotation: String,
-                                           dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kaptTestRelease"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.provided(dependencyNotation: Any)
-  = "provided"(dependencyNotation)
-
-fun DependencyHandlerScope.provided(dependencyNotation: String,
-                                    dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "provided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.releaseAnnotationProcessor(dependencyNotation: Any)
-  = "releaseAnnotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.releaseAnnotationProcessor(dependencyNotation: String,
-                                                      dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "releaseAnnotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.releaseApk(dependencyNotation: Any)
-  = "releaseApk"(dependencyNotation)
-
-fun DependencyHandlerScope.releaseApk(dependencyNotation: String,
-                                      dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "releaseApk"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.releaseImplementation(dependencyNotation: Any)
-  = "releaseImplementation"(dependencyNotation)
-
-fun DependencyHandlerScope.releaseImplementation(dependencyNotation: String,
-                                                 dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "releaseImplementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.releaseJackPlugin(dependencyNotation: Any)
-  = "releaseJackPlugin"(dependencyNotation)
-
-fun DependencyHandlerScope.releaseJackPlugin(dependencyNotation: String,
-                                             dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "releaseJackPlugin"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.releaseProvided(dependencyNotation: Any)
-  = "releaseProvided"(dependencyNotation)
-
-fun DependencyHandlerScope.releaseProvided(dependencyNotation: String,
-                                           dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "releaseProvided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.releaseWearApp(dependencyNotation: Any)
-  = "releaseWearApp"(dependencyNotation)
-
-fun DependencyHandlerScope.releaseWearApp(dependencyNotation: String,
-                                          dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "releaseWearApp"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testAnnotationProcessor(dependencyNotation: Any)
-  = "testAnnotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.testAnnotationProcessor(dependencyNotation: String,
-                                                   dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testAnnotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testApk(dependencyNotation: Any)
-  = "testApk"(dependencyNotation)
-
-fun DependencyHandlerScope.testApk(dependencyNotation: String,
-                                   dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testApk"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testImplementation(dependencyNotation: Any)
-  = "testImplementation"(dependencyNotation)
-
-fun DependencyHandlerScope.testImplementation(dependencyNotation: String,
-                                              dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testImplementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testDebugAnnotationProcessor(dependencyNotation: Any)
-  = "testDebugAnnotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.testDebugAnnotationProcessor(dependencyNotation: String,
-                                                        dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testDebugAnnotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testDebugApk(dependencyNotation: Any)
-  = "testDebugApk"(dependencyNotation)
-
-fun DependencyHandlerScope.testDebugApk(dependencyNotation: String,
-                                        dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testDebugApk"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testDebugImplementation(dependencyNotation: Any)
-  = "testDebugImplementation"(dependencyNotation)
-
-fun DependencyHandlerScope.testDebugImplementation(dependencyNotation: String,
-                                                   dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testDebugImplementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testDebugJackPlugin(dependencyNotation: Any)
-  = "testDebugJackPlugin"(dependencyNotation)
-
-fun DependencyHandlerScope.testDebugJackPlugin(dependencyNotation: String,
-                                               dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testDebugJackPlugin"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testDebugProvided(dependencyNotation: Any)
-  = "testDebugProvided"(dependencyNotation)
-
-fun DependencyHandlerScope.testDebugProvided(dependencyNotation: String,
-                                             dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testDebugProvided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testDebugWearApp(dependencyNotation: Any)
-  = "testDebugWearApp"(dependencyNotation)
-
-fun DependencyHandlerScope.testDebugWearApp(dependencyNotation: String,
-                                            dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testDebugWearApp"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testJackPlugin(dependencyNotation: Any)
-  = "testJackPlugin"(dependencyNotation)
-
-fun DependencyHandlerScope.testJackPlugin(dependencyNotation: String,
-                                          dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testJackPlugin"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testProvided(dependencyNotation: Any)
-  = "testProvided"(dependencyNotation)
-
-fun DependencyHandlerScope.testProvided(dependencyNotation: String,
-                                        dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testProvided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testReleaseAnnotationProcessor(dependencyNotation: Any)
-  = "testReleaseAnnotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.testReleaseAnnotationProcessor(dependencyNotation: String,
-                                                          dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testReleaseAnnotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testReleaseApk(dependencyNotation: Any)
-  = "testReleaseApk"(dependencyNotation)
-
-fun DependencyHandlerScope.testReleaseApk(dependencyNotation: String,
-                                          dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testReleaseApk"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testReleaseImplementation(dependencyNotation: Any)
-  = "testReleaseImplementation"(dependencyNotation)
-
-fun DependencyHandlerScope.testReleaseImplementation(dependencyNotation: String,
-                                                     dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testReleaseImplementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testReleaseJackPlugin(dependencyNotation: Any)
-  = "testReleaseJackPlugin"(dependencyNotation)
-
-fun DependencyHandlerScope.testReleaseJackPlugin(dependencyNotation: String,
-                                                 dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testReleaseJackPlugin"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testReleaseProvided(dependencyNotation: Any)
-  = "testReleaseProvided"(dependencyNotation)
-
-fun DependencyHandlerScope.testReleaseProvided(dependencyNotation: String,
-                                               dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testReleaseProvided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testReleaseWearApp(dependencyNotation: Any)
-  = "testReleaseWearApp"(dependencyNotation)
-
-fun DependencyHandlerScope.testReleaseWearApp(dependencyNotation: String,
-                                              dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testReleaseWearApp"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testWearApp(dependencyNotation: Any)
-  = "testWearApp"(dependencyNotation)
-
-fun DependencyHandlerScope.testWearApp(dependencyNotation: String,
-                                       dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testWearApp"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.wearApp(dependencyNotation: Any)
-  = "wearApp"(dependencyNotation)
-
-fun DependencyHandlerScope.wearApp(dependencyNotation: String,
-                                   dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "wearApp"(dependencyNotation, dependencyConfiguration)
diff --git a/build.gradle b/build.gradle
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/build.gradle.kts b/build.gradle.kts
index ad56ba870be58502b361aa0a889e3b972bfc782c..a62c67371a84496d1370a5f7790df81e51440cca 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -4,8 +4,9 @@ buildscript {
     jcenter()
   }
   dependencies {
-    classpath("com.android.tools.build:gradle:3.0.0-beta6")
-    classpath(kotlin("gradle-plugin"))
+    classpath("com.android.tools.build:gradle:3.0.0-rc1")
+    classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.1.51")
+    classpath("org.jetbrains.kotlin:kotlin-android-extensions:1.1.51")
   }
 }
 
@@ -13,8 +14,6 @@ allprojects {
   repositories {
     google()
     jcenter()
-    maven {
-      url = uri("https://jitpack.io")
-    }
+    maven(url = "https://jitpack.io")
   }
 }
diff --git a/gradle/project-schema.json b/gradle/project-schema.json
deleted file mode 100644
index 4ed87d03d681e2b1cadf5382830c6354a29b21bc..0000000000000000000000000000000000000000
--- a/gradle/project-schema.json
+++ /dev/null
@@ -1,73 +0,0 @@
-{
-  ":": {
-    "conventions": {
-      "base": "org.gradle.api.plugins.BasePluginConvention",
-      "java": "org.gradle.api.plugins.JavaPluginConvention"
-    },
-    "configurations": [
-      "androidJacocoAgent",
-      "androidJacocoAnt",
-      "androidTestAnnotationProcessor",
-      "androidTestApk",
-      "androidTestCompile",
-      "androidTestJackPlugin",
-      "androidTestProvided",
-      "androidTestWearApp",
-      "annotationProcessor",
-      "apk",
-      "archives",
-      "compile",
-      "debugAnnotationProcessor",
-      "debugApk",
-      "debugCompile",
-      "debugJackPlugin",
-      "debugProvided",
-      "debugWearApp",
-      "default",
-      "default-mapping",
-      "default-metadata",
-      "jackPlugin",
-      "kapt",
-      "kaptAndroidTest",
-      "kaptDebug",
-      "kaptRelease",
-      "kaptTest",
-      "kaptTestDebug",
-      "kaptTestRelease",
-      "provided",
-      "releaseAnnotationProcessor",
-      "releaseApk",
-      "releaseCompile",
-      "releaseJackPlugin",
-      "releaseProvided",
-      "releaseWearApp",
-      "testAnnotationProcessor",
-      "testApk",
-      "testCompile",
-      "testDebugAnnotationProcessor",
-      "testDebugApk",
-      "testDebugCompile",
-      "testDebugJackPlugin",
-      "testDebugProvided",
-      "testDebugWearApp",
-      "testJackPlugin",
-      "testProvided",
-      "testReleaseAnnotationProcessor",
-      "testReleaseApk",
-      "testReleaseCompile",
-      "testReleaseJackPlugin",
-      "testReleaseProvided",
-      "testReleaseWearApp",
-      "testWearApp",
-      "wearApp"
-    ],
-    "extensions": {
-      "ext": "org.gradle.api.plugins.ExtraPropertiesExtension",
-      "defaultArtifacts": "org.gradle.api.internal.plugins.DefaultArtifactPublicationSet",
-      "reporting": "org.gradle.api.reporting.ReportingExtension",
-      "android": "com.android.build.gradle.AppExtension",
-      "kotlin": "org.jetbrains.kotlin.gradle.dsl.KotlinProjectExtension",
-      "kapt": "org.jetbrains.kotlin.gradle.plugin.KaptExtension"
-    }
-  }
-}
\ No newline at end of file
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index e3f1f1c250d83aa9b0acebe9f3bae4dbb5df0424..b4444cb3fb513ea4c725386d2ef27e0f97c2c85a 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -2,4 +2,5 @@ distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=https\://repo.gradle.org/gradle/dist-snapshots/gradle-kotlin-dsl-4.1-20170712173431+0000-all.zip
+distributionUrl=https\://repo.gradle.org/gradle/dist-snapshots/gradle-kotlin-dsl-4.3-20171010191714+0000-all.zip
+
diff --git a/invokerannotations/build.gradle.kts b/invokerannotations/build.gradle.kts
index 414c804348982209629d3a460a746d4b22a1922a..70f116878f39292ae272dff4edc2a27bb81fd818 100644
--- a/invokerannotations/build.gradle.kts
+++ b/invokerannotations/build.gradle.kts
@@ -1,3 +1,3 @@
 plugins {
-  java
+  id("java")
 }
diff --git a/invokergenerator/build.gradle.kts b/invokergenerator/build.gradle.kts
index 2a9f340d645394e64c37e2eec33fd963181e162c..fb83f9a7d5ea04d38ce94fe261879be8bc90c0bd 100644
--- a/invokergenerator/build.gradle.kts
+++ b/invokergenerator/build.gradle.kts
@@ -1,10 +1,9 @@
 import org.gradle.kotlin.dsl.DependencyHandlerScope
 import org.gradle.kotlin.dsl.dependencies
-import org.gradle.kotlin.dsl.java
 import org.gradle.kotlin.dsl.project
 
 plugins {
-  java
+  id("java")
 }
 
 dependencies {
@@ -12,6 +11,3 @@ dependencies {
   implementation("com.google.auto.service:auto-service:1.0-rc3")
   implementation("com.squareup:javapoet:1.9.0")
 }
-
-fun DependencyHandlerScope.implementation(dependencyNotation: Any)
-  = "implementation"(dependencyNotation)
diff --git a/lib/build.gradle.kts b/lib/build.gradle.kts
index 7655a3b9218ef7518a6febf511c281502fd08e52..28a1948e76115d1c654c4d7a6b5b8451f9b3baf3 100644
--- a/lib/build.gradle.kts
+++ b/lib/build.gradle.kts
@@ -4,14 +4,14 @@ import org.gradle.kotlin.dsl.*
 import org.jetbrains.kotlin.gradle.plugin.KaptExtension
 import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
 
-apply {
-  plugin("kotlin")
-  plugin("kotlin-kapt")
+plugins {
+  kotlin("jvm")
+  kotlin("kapt")
 }
 
 val appCompatVersion = "26.1.0"
 dependencies {
-  implementation(kotlin("stdlib"))
+  implementation(kotlin("stdlib", "1.1.51"))
 
   implementation(appCompat("support-annotations"))
   implementation("org.threeten:threetenbp:1.3.6")
@@ -40,181 +40,3 @@ tasks.withType(KotlinCompile::class.java) {
  */
 fun appCompat(module: String, version: String? = null)
   = "com.android.support:$module:${version ?: appCompatVersion}"
-
-fun Project.kapt(f: KaptExtension.() -> Unit)
-  = configure(f)
-
-fun DependencyHandlerScope.archives(dependencyNotation: Any)
-  = "archives"(dependencyNotation)
-
-fun DependencyHandlerScope.archives(dependencyNotation: String,
-                                    dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "archives"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.implementation(dependencyNotation: Any)
-  = "implementation"(dependencyNotation)
-
-fun DependencyHandlerScope.implementation(dependencyNotation: String,
-                                          dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "implementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.debugAnnotationProcessor(dependencyNotation: Any)
-  = "debugAnnotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.debugAnnotationProcessor(dependencyNotation: String,
-                                                    dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "debugAnnotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.debugImplementation(dependencyNotation: Any)
-  = "debugImplementation"(dependencyNotation)
-
-fun DependencyHandlerScope.debugImplementation(dependencyNotation: String,
-                                               dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "debugImplementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.debugProvided(dependencyNotation: Any)
-  = "debugProvided"(dependencyNotation)
-
-fun DependencyHandlerScope.debugProvided(dependencyNotation: String,
-                                         dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "debugProvided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.default(dependencyNotation: Any)
-  = "default"(dependencyNotation)
-
-fun DependencyHandlerScope.default(dependencyNotation: String,
-                                   dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "default"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kapt(dependencyNotation: Any)
-  = "kapt"(dependencyNotation)
-
-fun DependencyHandlerScope.kapt(dependencyNotation: String,
-                                dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kapt"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kaptDebug(dependencyNotation: Any)
-  = "kaptDebug"(dependencyNotation)
-
-fun DependencyHandlerScope.kaptDebug(dependencyNotation: String,
-                                     dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kaptDebug"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kaptRelease(dependencyNotation: Any)
-  = "kaptRelease"(dependencyNotation)
-
-fun DependencyHandlerScope.kaptRelease(dependencyNotation: String,
-                                       dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kaptRelease"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kaptTest(dependencyNotation: Any)
-  = "kaptTest"(dependencyNotation)
-
-fun DependencyHandlerScope.kaptTest(dependencyNotation: String,
-                                    dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kaptTest"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kaptTestDebug(dependencyNotation: Any)
-  = "kaptTestDebug"(dependencyNotation)
-
-fun DependencyHandlerScope.kaptTestDebug(dependencyNotation: String,
-                                         dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kaptTestDebug"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kaptTestRelease(dependencyNotation: Any)
-  = "kaptTestRelease"(dependencyNotation)
-
-fun DependencyHandlerScope.kaptTestRelease(dependencyNotation: String,
-                                           dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kaptTestRelease"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.provided(dependencyNotation: Any)
-  = "provided"(dependencyNotation)
-
-fun DependencyHandlerScope.provided(dependencyNotation: String,
-                                    dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "provided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.releaseAnnotationProcessor(dependencyNotation: Any)
-  = "releaseAnnotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.releaseAnnotationProcessor(dependencyNotation: String,
-                                                      dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "releaseAnnotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.releaseImplementation(dependencyNotation: Any)
-  = "releaseImplementation"(dependencyNotation)
-
-fun DependencyHandlerScope.releaseImplementation(dependencyNotation: String,
-                                                 dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "releaseImplementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.releaseProvided(dependencyNotation: Any)
-  = "releaseProvided"(dependencyNotation)
-
-fun DependencyHandlerScope.releaseProvided(dependencyNotation: String,
-                                           dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "releaseProvided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testAnnotationProcessor(dependencyNotation: Any)
-  = "testAnnotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.testAnnotationProcessor(dependencyNotation: String,
-                                                   dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testAnnotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testImplementation(dependencyNotation: Any)
-  = "testImplementation"(dependencyNotation)
-
-fun DependencyHandlerScope.testImplementation(dependencyNotation: String,
-                                              dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testImplementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testDebugAnnotationProcessor(dependencyNotation: Any)
-  = "testDebugAnnotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.testDebugAnnotationProcessor(dependencyNotation: String,
-                                                        dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testDebugAnnotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testDebugImplementation(dependencyNotation: Any)
-  = "testDebugImplementation"(dependencyNotation)
-
-fun DependencyHandlerScope.testDebugImplementation(dependencyNotation: String,
-                                                   dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testDebugImplementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testDebugProvided(dependencyNotation: Any)
-  = "testDebugProvided"(dependencyNotation)
-
-fun DependencyHandlerScope.testDebugProvided(dependencyNotation: String,
-                                             dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testDebugProvided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testProvided(dependencyNotation: Any)
-  = "testProvided"(dependencyNotation)
-
-fun DependencyHandlerScope.testProvided(dependencyNotation: String,
-                                        dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testProvided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testReleaseAnnotationProcessor(dependencyNotation: Any)
-  = "testReleaseAnnotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.testReleaseAnnotationProcessor(dependencyNotation: String,
-                                                          dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testReleaseAnnotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testReleaseImplementation(dependencyNotation: Any)
-  = "testReleaseImplementation"(dependencyNotation)
-
-fun DependencyHandlerScope.testReleaseImplementation(dependencyNotation: String,
-                                                     dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testReleaseImplementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testReleaseProvided(dependencyNotation: Any)
-  = "testReleaseProvided"(dependencyNotation)
-
-fun DependencyHandlerScope.testReleaseProvided(dependencyNotation: String,
-                                               dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testReleaseProvided"(dependencyNotation, dependencyConfiguration)
diff --git a/malheur/build.gradle.kts b/malheur/build.gradle.kts
index 5584497778d1594d868605409944cceda1ac0ac6..0d56735cf95bfc6b86836b008d0e3b01fee3653e 100644
--- a/malheur/build.gradle.kts
+++ b/malheur/build.gradle.kts
@@ -1,16 +1,16 @@
-import com.android.build.gradle.LibraryExtension
-import org.gradle.api.Project
-import org.gradle.kotlin.dsl.*
-
-apply {
-  plugin("com.android.library")
-  plugin("kotlin-android")
-  plugin("kotlin-kapt")
+import org.gradle.kotlin.dsl.apply
+import org.gradle.kotlin.dsl.dependencies
+import org.gradle.kotlin.dsl.kotlin
+
+plugins {
+  id("com.android.library")
+  kotlin("android")
+  kotlin("kapt")
 }
 
 android {
   compileSdkVersion(26)
-  buildToolsVersion("26.0.1")
+  buildToolsVersion("26.0.2")
 
   defaultConfig {
     minSdkVersion(9)
@@ -21,381 +21,7 @@ android {
 }
 
 dependencies {
-  implementation(kotlin("stdlib"))
+  implementation(kotlin("stdlib", "1.1.51"))
 
   implementation("com.google.code.gson:gson:2.2.4")
 }
-
-fun Project.android(f: LibraryExtension.() -> Unit)
-  = configure(f)
-
-fun DependencyHandlerScope.androidJacocoAgent(dependencyNotation: Any)
-  = "androidJacocoAgent"(dependencyNotation)
-
-fun DependencyHandlerScope.androidJacocoAgent(dependencyNotation: String,
-                                              dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "androidJacocoAgent"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.androidJacocoAnt(dependencyNotation: Any)
-  = "androidJacocoAnt"(dependencyNotation)
-
-fun DependencyHandlerScope.androidJacocoAnt(dependencyNotation: String,
-                                            dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "androidJacocoAnt"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.androidTestAnnotationProcessor(dependencyNotation: Any)
-  = "androidTestAnnotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.androidTestAnnotationProcessor(dependencyNotation: String,
-                                                          dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "androidTestAnnotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.androidTestApk(dependencyNotation: Any)
-  = "androidTestApk"(dependencyNotation)
-
-fun DependencyHandlerScope.androidTestApk(dependencyNotation: String,
-                                          dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "androidTestApk"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.androidTestImplementation(dependencyNotation: Any)
-  = "androidTestImplementation"(dependencyNotation)
-
-fun DependencyHandlerScope.androidTestImplementation(dependencyNotation: String,
-                                                     dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "androidTestImplementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.androidTestJackPlugin(dependencyNotation: Any)
-  = "androidTestJackPlugin"(dependencyNotation)
-
-fun DependencyHandlerScope.androidTestJackPlugin(dependencyNotation: String,
-                                                 dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "androidTestJackPlugin"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.androidTestProvided(dependencyNotation: Any)
-  = "androidTestProvided"(dependencyNotation)
-
-fun DependencyHandlerScope.androidTestProvided(dependencyNotation: String,
-                                               dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "androidTestProvided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.androidTestWearApp(dependencyNotation: Any)
-  = "androidTestWearApp"(dependencyNotation)
-
-fun DependencyHandlerScope.androidTestWearApp(dependencyNotation: String,
-                                              dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "androidTestWearApp"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.annotationProcessor(dependencyNotation: Any)
-  = "annotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.annotationProcessor(dependencyNotation: String,
-                                               dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "annotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.apk(dependencyNotation: Any)
-  = "apk"(dependencyNotation)
-
-fun DependencyHandlerScope.apk(dependencyNotation: String,
-                               dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "apk"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.archives(dependencyNotation: Any)
-  = "archives"(dependencyNotation)
-
-fun DependencyHandlerScope.archives(dependencyNotation: String,
-                                    dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "archives"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.implementation(dependencyNotation: Any)
-  = "implementation"(dependencyNotation)
-
-fun DependencyHandlerScope.implementation(dependencyNotation: String,
-                                          dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "implementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.debugAnnotationProcessor(dependencyNotation: Any)
-  = "debugAnnotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.debugAnnotationProcessor(dependencyNotation: String,
-                                                    dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "debugAnnotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.debugApk(dependencyNotation: Any)
-  = "debugApk"(dependencyNotation)
-
-fun DependencyHandlerScope.debugApk(dependencyNotation: String,
-                                    dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "debugApk"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.debugImplementation(dependencyNotation: Any)
-  = "debugImplementation"(dependencyNotation)
-
-fun DependencyHandlerScope.debugImplementation(dependencyNotation: String,
-                                               dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "debugImplementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.debugJackPlugin(dependencyNotation: Any)
-  = "debugJackPlugin"(dependencyNotation)
-
-fun DependencyHandlerScope.debugJackPlugin(dependencyNotation: String,
-                                           dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "debugJackPlugin"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.debugProvided(dependencyNotation: Any)
-  = "debugProvided"(dependencyNotation)
-
-fun DependencyHandlerScope.debugProvided(dependencyNotation: String,
-                                         dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "debugProvided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.debugWearApp(dependencyNotation: Any)
-  = "debugWearApp"(dependencyNotation)
-
-fun DependencyHandlerScope.debugWearApp(dependencyNotation: String,
-                                        dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "debugWearApp"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.default(dependencyNotation: Any)
-  = "default"(dependencyNotation)
-
-fun DependencyHandlerScope.default(dependencyNotation: String,
-                                   dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "default"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.jackPlugin(dependencyNotation: Any)
-  = "jackPlugin"(dependencyNotation)
-
-fun DependencyHandlerScope.jackPlugin(dependencyNotation: String,
-                                      dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "jackPlugin"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kapt(dependencyNotation: Any)
-  = "kapt"(dependencyNotation)
-
-fun DependencyHandlerScope.kapt(dependencyNotation: String,
-                                dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kapt"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kaptAndroidTest(dependencyNotation: Any)
-  = "kaptAndroidTest"(dependencyNotation)
-
-fun DependencyHandlerScope.kaptAndroidTest(dependencyNotation: String,
-                                           dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kaptAndroidTest"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kaptDebug(dependencyNotation: Any)
-  = "kaptDebug"(dependencyNotation)
-
-fun DependencyHandlerScope.kaptDebug(dependencyNotation: String,
-                                     dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kaptDebug"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kaptRelease(dependencyNotation: Any)
-  = "kaptRelease"(dependencyNotation)
-
-fun DependencyHandlerScope.kaptRelease(dependencyNotation: String,
-                                       dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kaptRelease"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kaptTest(dependencyNotation: Any)
-  = "kaptTest"(dependencyNotation)
-
-fun DependencyHandlerScope.kaptTest(dependencyNotation: String,
-                                    dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kaptTest"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kaptTestDebug(dependencyNotation: Any)
-  = "kaptTestDebug"(dependencyNotation)
-
-fun DependencyHandlerScope.kaptTestDebug(dependencyNotation: String,
-                                         dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kaptTestDebug"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.kaptTestRelease(dependencyNotation: Any)
-  = "kaptTestRelease"(dependencyNotation)
-
-fun DependencyHandlerScope.kaptTestRelease(dependencyNotation: String,
-                                           dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "kaptTestRelease"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.provided(dependencyNotation: Any)
-  = "provided"(dependencyNotation)
-
-fun DependencyHandlerScope.provided(dependencyNotation: String,
-                                    dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "provided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.releaseAnnotationProcessor(dependencyNotation: Any)
-  = "releaseAnnotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.releaseAnnotationProcessor(dependencyNotation: String,
-                                                      dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "releaseAnnotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.releaseApk(dependencyNotation: Any)
-  = "releaseApk"(dependencyNotation)
-
-fun DependencyHandlerScope.releaseApk(dependencyNotation: String,
-                                      dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "releaseApk"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.releaseImplementation(dependencyNotation: Any)
-  = "releaseImplementation"(dependencyNotation)
-
-fun DependencyHandlerScope.releaseImplementation(dependencyNotation: String,
-                                                 dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "releaseImplementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.releaseJackPlugin(dependencyNotation: Any)
-  = "releaseJackPlugin"(dependencyNotation)
-
-fun DependencyHandlerScope.releaseJackPlugin(dependencyNotation: String,
-                                             dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "releaseJackPlugin"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.releaseProvided(dependencyNotation: Any)
-  = "releaseProvided"(dependencyNotation)
-
-fun DependencyHandlerScope.releaseProvided(dependencyNotation: String,
-                                           dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "releaseProvided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.releaseWearApp(dependencyNotation: Any)
-  = "releaseWearApp"(dependencyNotation)
-
-fun DependencyHandlerScope.releaseWearApp(dependencyNotation: String,
-                                          dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "releaseWearApp"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testAnnotationProcessor(dependencyNotation: Any)
-  = "testAnnotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.testAnnotationProcessor(dependencyNotation: String,
-                                                   dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testAnnotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testApk(dependencyNotation: Any)
-  = "testApk"(dependencyNotation)
-
-fun DependencyHandlerScope.testApk(dependencyNotation: String,
-                                   dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testApk"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testImplementation(dependencyNotation: Any)
-  = "testImplementation"(dependencyNotation)
-
-fun DependencyHandlerScope.testImplementation(dependencyNotation: String,
-                                              dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testImplementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testDebugAnnotationProcessor(dependencyNotation: Any)
-  = "testDebugAnnotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.testDebugAnnotationProcessor(dependencyNotation: String,
-                                                        dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testDebugAnnotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testDebugApk(dependencyNotation: Any)
-  = "testDebugApk"(dependencyNotation)
-
-fun DependencyHandlerScope.testDebugApk(dependencyNotation: String,
-                                        dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testDebugApk"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testDebugImplementation(dependencyNotation: Any)
-  = "testDebugImplementation"(dependencyNotation)
-
-fun DependencyHandlerScope.testDebugImplementation(dependencyNotation: String,
-                                                   dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testDebugImplementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testDebugJackPlugin(dependencyNotation: Any)
-  = "testDebugJackPlugin"(dependencyNotation)
-
-fun DependencyHandlerScope.testDebugJackPlugin(dependencyNotation: String,
-                                               dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testDebugJackPlugin"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testDebugProvided(dependencyNotation: Any)
-  = "testDebugProvided"(dependencyNotation)
-
-fun DependencyHandlerScope.testDebugProvided(dependencyNotation: String,
-                                             dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testDebugProvided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testDebugWearApp(dependencyNotation: Any)
-  = "testDebugWearApp"(dependencyNotation)
-
-fun DependencyHandlerScope.testDebugWearApp(dependencyNotation: String,
-                                            dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testDebugWearApp"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testJackPlugin(dependencyNotation: Any)
-  = "testJackPlugin"(dependencyNotation)
-
-fun DependencyHandlerScope.testJackPlugin(dependencyNotation: String,
-                                          dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testJackPlugin"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testProvided(dependencyNotation: Any)
-  = "testProvided"(dependencyNotation)
-
-fun DependencyHandlerScope.testProvided(dependencyNotation: String,
-                                        dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testProvided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testReleaseAnnotationProcessor(dependencyNotation: Any)
-  = "testReleaseAnnotationProcessor"(dependencyNotation)
-
-fun DependencyHandlerScope.testReleaseAnnotationProcessor(dependencyNotation: String,
-                                                          dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testReleaseAnnotationProcessor"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testReleaseApk(dependencyNotation: Any)
-  = "testReleaseApk"(dependencyNotation)
-
-fun DependencyHandlerScope.testReleaseApk(dependencyNotation: String,
-                                          dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testReleaseApk"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testReleaseImplementation(dependencyNotation: Any)
-  = "testReleaseImplementation"(dependencyNotation)
-
-fun DependencyHandlerScope.testReleaseImplementation(dependencyNotation: String,
-                                                     dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testReleaseImplementation"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testReleaseJackPlugin(dependencyNotation: Any)
-  = "testReleaseJackPlugin"(dependencyNotation)
-
-fun DependencyHandlerScope.testReleaseJackPlugin(dependencyNotation: String,
-                                                 dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testReleaseJackPlugin"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testReleaseProvided(dependencyNotation: Any)
-  = "testReleaseProvided"(dependencyNotation)
-
-fun DependencyHandlerScope.testReleaseProvided(dependencyNotation: String,
-                                               dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testReleaseProvided"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testReleaseWearApp(dependencyNotation: Any)
-  = "testReleaseWearApp"(dependencyNotation)
-
-fun DependencyHandlerScope.testReleaseWearApp(dependencyNotation: String,
-                                              dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testReleaseWearApp"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.testWearApp(dependencyNotation: Any)
-  = "testWearApp"(dependencyNotation)
-
-fun DependencyHandlerScope.testWearApp(dependencyNotation: String,
-                                       dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "testWearApp"(dependencyNotation, dependencyConfiguration)
-
-fun DependencyHandlerScope.wearApp(dependencyNotation: Any)
-  = "wearApp"(dependencyNotation)
-
-fun DependencyHandlerScope.wearApp(dependencyNotation: String,
-                                   dependencyConfiguration: ExternalModuleDependency.() -> Unit)
-  = "wearApp"(dependencyNotation, dependencyConfiguration)
diff --git a/settings.gradle b/settings.gradle
index f0ccacf731b67849daea098a45821315b5a8e717..1215a34536f4eac249eff82745056f6d96a83f16 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -1 +1,3 @@
-include ':invokerannotations', ':invokergenerator', ':lib', ':app', ':malheur'
+include ':invokerannotations', ':invokergenerator', ':lib', ':malheur', ':app'
+
+rootProject.buildFileName = 'build.gradle.kts'