diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 2e460992a991bf4939fe89aeb10568e02e53391f..fb1719cbe52d249825a052dab2d9c6e891d12281 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -92,7 +92,7 @@ dependencies {
   implementation(kotlin("stdlib", "1.2.30"))
 
   // App Compat
-  withVersion("27.0.2") {
+  withVersion("27.1.0") {
     implementation("com.android.support", "appcompat-v7", version)
     implementation("com.android.support", "design", version)
     implementation("com.android.support", "customtabs", version)
@@ -111,7 +111,7 @@ dependencies {
   }
 
   // App Arch Persistence
-  withVersion("1.1.0-alpha2") {
+  withVersion("1.1.0-alpha3") {
     implementation("android.arch.persistence.room", "runtime", version)
     implementation("android.arch.persistence.room", "rxjava2", version)
     kapt("android.arch.persistence.room", "compiler", version)
@@ -119,7 +119,7 @@ dependencies {
   }
 
   // App Arch Paging
-  implementation("android.arch.paging", "runtime", "1.0.0-alpha5") {
+  implementation("android.arch.paging", "runtime", "1.0.0-alpha6") {
     exclude(group = "junit", module = "junit")
   }
 
@@ -157,36 +157,4 @@ dependencies {
     androidTestImplementation("com.android.support.test", "rules", version)
   }
   androidTestImplementation("com.android.support.test.espresso", "espresso-core", "3.0.1")
-}
-
-/*
-tasks.withType(KotlinCompile::class.java) {
-  kotlinOptions {
-    freeCompilerArgs = listOf(
-      "-Xno-param-assertions",
-      "-Xno-call-assertions"
-    )
-  }
-}
-*/
-
-fun cmd(vararg command: String) = try {
-  val stdOut = ByteArrayOutputStream()
-  exec {
-    commandLine(*command)
-    standardOutput = stdOut
-  }
-  stdOut.toString(Charsets.UTF_8.name()).trim()
-} catch (e: Throwable) {
-  e.printStackTrace()
-  null
-}
-
-fun Project.properties(fileName: String): Properties? {
-  val file = file(fileName)
-  if (!file.exists())
-    return null
-  val props = Properties()
-  props.load(file.inputStream())
-  return props
 }
\ No newline at end of file
diff --git a/buildSrc/src/main/kotlin/ProjectHelper.kt b/buildSrc/src/main/kotlin/ProjectHelper.kt
new file mode 100644
index 0000000000000000000000000000000000000000..a2c9119a7322e0081dddc102cebb351bd7a2e92a
--- /dev/null
+++ b/buildSrc/src/main/kotlin/ProjectHelper.kt
@@ -0,0 +1,24 @@
+import org.gradle.api.Project
+import java.io.ByteArrayOutputStream
+import java.util.*
+
+fun Project.cmd(vararg command: String) = try {
+  val stdOut = ByteArrayOutputStream()
+  exec {
+    commandLine(*command)
+    standardOutput = stdOut
+  }
+  stdOut.toString(Charsets.UTF_8.name()).trim()
+} catch (e: Throwable) {
+  e.printStackTrace()
+  null
+}
+
+fun Project.properties(fileName: String): Properties? {
+  val file = file(fileName)
+  if (!file.exists())
+    return null
+  val props = Properties()
+  props.load(file.inputStream())
+  return props
+}
\ No newline at end of file
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 5a5a337ae2c2a0e5476915c2c22b96bb5ccf24db..4571f45064146299054a8044b637f0814a053510 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -2,5 +2,5 @@ distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=https://services.gradle.org/distributions/gradle-4.5.1-all.zip
+distributionUrl=https://services.gradle.org/distributions/gradle-4.6-all.zip
 
diff --git a/lib/build.gradle.kts b/lib/build.gradle.kts
index 1bb7a948b256923cca02cd9f219a5bde5bd0cfac..8c2b7c1a60beafb58b56e0b60dc5f09af07ecb04 100644
--- a/lib/build.gradle.kts
+++ b/lib/build.gradle.kts
@@ -9,11 +9,13 @@ plugins {
   kotlin("kapt")
 }
 
-val appCompatVersion = "27.0.2"
 dependencies {
   implementation(kotlin("stdlib", "1.2.30"))
 
-  implementation("com.android.support", "support-annotations", "27.0.2")
+  withVersion("27.1.0") {
+    implementation("com.android.support", "support-annotations", version)
+  }
+
   implementation("org.threeten", "threetenbp", "1.3.6")
   implementation("io.reactivex.rxjava2:rxjava:2.1.9")
 
@@ -21,15 +23,4 @@ dependencies {
   kapt(project(":invokergenerator"))
 
   testImplementation("junit", "junit", "4.12")
-}
-
-/*
-tasks.withType(KotlinCompile::class.java) {
-  kotlinOptions {
-    freeCompilerArgs = listOf(
-      "-Xno-param-assertions",
-      "-Xno-call-assertions"
-    )
-  }
-}
-*/
+}
\ No newline at end of file
diff --git a/slidingpanel/build.gradle.kts b/slidingpanel/build.gradle.kts
index 1caf1beaa4874162f49373094a957c02f2b914f8..87b8a697299cdf3a962fb04bdd0a323bcaa4bfb9 100644
--- a/slidingpanel/build.gradle.kts
+++ b/slidingpanel/build.gradle.kts
@@ -14,7 +14,7 @@ android {
 
 dependencies {
   // App Compat
-  withVersion("27.0.2") {
+  withVersion("27.1.0") {
     implementation("com.android.support", "support-v4", version)
     implementation("com.android.support", "support-annotations", version)
     implementation("com.android.support", "recyclerview-v7", version)