Restructure the Transition support library

Transition classes no longer delegate to platform Transitions.

Underlying features are separated into their own compatibility layers.
- ViewOverlay and ViewGroupOverlay (platform: 18)
- WindowId (platform: 18)
- ViewGroup.suppressLayout (platform: 19, not backported yet)

This does not change behaviors except for the followings:
- On API level 18, WindowId and ViewOverlay delegate to the platform
- Transition is Cloneable
- Inheriting Visibility now works fine

Test: All existing tests and VisibilityTest pass on 15, 16, 18, 19, and
      25
Change-Id: I87e7a14a45d51b5ad6f77ab213c7a732b7512708
diff --git a/transition/build.gradle b/transition/build.gradle
index 05675f9..ed00d45 100644
--- a/transition/build.gradle
+++ b/transition/build.gradle
@@ -30,10 +30,9 @@
         main.manifest.srcFile 'AndroidManifest.xml'
         main.java.srcDirs = [
                 'base',
-                'ics',
-                'kitkat',
-                'api21',
-                'api23',
+                'api14',
+                'api18',
+                'api19',
                 'src'
         ]
         main.res.srcDirs = [