Move the plugin to the top level directory

This way every sources is under java{,tests}/pkg and in one eclipse project.
diff --git a/com.google.devtools.bazel.e4b/.classpath b/.classpath
similarity index 97%
rename from com.google.devtools.bazel.e4b/.classpath
rename to .classpath
index 9d5039f..163f5ec 100644
--- a/com.google.devtools.bazel.e4b/.classpath
+++ b/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
 	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry excluding="**/BUILD|**/BUILD.bazel" kind="src" path="src"/>
+	<classpathentry excluding="**/BUILD|**/BUILD.bazel" kind="src" path="java"/>
 	<classpathentry excluding="**/BUILD|**/BUILD.bazel" kind="src" path="javatests"/>
 	<classpathentry exported="true" kind="lib" path="runfiles/com_google_guava/jar/guava-21.0.jar"/>
 	<classpathentry exported="true" kind="lib" path="runfiles/org_json/jar/json-20160212.jar"/>
diff --git a/.gitignore b/.gitignore
index 77647e0..351d45e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,9 +1,3 @@
-bin
+/bin
 .settings
-.DS_Store
-/.metadata
-/.recommenders
-p2updatesite/*.jar
-p2updatesite/features
-p2updatesite/plugins
 /bazel-*
diff --git a/com.google.devtools.bazel.e4b/.project b/.project
similarity index 100%
rename from com.google.devtools.bazel.e4b/.project
rename to .project
diff --git a/BUILD b/BUILD
index 22d86b2..6142439 100644
--- a/BUILD
+++ b/BUILD
@@ -1,9 +1,27 @@
 load(
     "//tools/build_defs:eclipse.bzl",
+    "eclipse_plugin",
     "eclipse_feature",
     "eclipse_p2updatesite",
 )
 
+VERSION = "0.0.3.qualifier"
+
+eclipse_plugin(
+    name = "com.google.devtools.bazel.e4b",
+    srcs = glob(["java/**/*.java"]),
+    activator = "com.google.devtools.bazel.e4b.Activator",
+    bundle_name = "Eclipse 4 Bazel",
+    resources = glob(["resources/**"]) + ["//resources/tools/must/be/unique:srcs"],
+    vendor = "The Bazel Authors",
+    version = VERSION,
+    visibility = ["//visibility:public"],
+    deps = [
+        "//java/com/google/devtools/bazel/e4b/command",
+        "@com_google_guava//jar",
+    ],
+)
+
 eclipse_feature(
     name = "com.google.devtools.bazel.e4b.feature",
     copyright = "Copyright 2016 The Bazel Authors",
@@ -11,11 +29,11 @@
     label = "Eclipse 4 Bazel",
     license = ":LICENSE.txt",
     license_url = "http://www.apache.org/licenses/LICENSE-2.0",
-    plugins = ["//com.google.devtools.bazel.e4b"],
+    plugins = ["//:com.google.devtools.bazel.e4b"],
     provider = "The Bazel Authors",
     sites = {"Bazel": "https://bazel.build"},
     url = "https://github.com/bazelbuild/e4b",
-    version = "0.0.3.qualifier",
+    version = VERSION,
     visibility = ["//visibility:public"],
 )
 
diff --git a/com.google.devtools.bazel.e4b/META-INF/MANIFEST.MF b/META-INF/MANIFEST.MF
similarity index 100%
rename from com.google.devtools.bazel.e4b/META-INF/MANIFEST.MF
rename to META-INF/MANIFEST.MF
diff --git a/build.properties b/build.properties
new file mode 100644
index 0000000..59f6908
--- /dev/null
+++ b/build.properties
@@ -0,0 +1,9 @@
+source.. = java/,\
+           javatests/
+output.. = bin/
+bin.includes = META-INF/,\
+               resources/,\
+               plugin.xml,\
+               bazel-bin/javatests/com/google/devtools/bazel/e4b/command/CommandTest.runfiles/com_google_guava/jar/guava-21.0.jar,\
+               bazel-bin/javatests/com/google/devtools/bazel/e4b/command/CommandTest.runfiles/org_json/jar/json-20160212.jar,\
+               bin/
diff --git a/com.google.devtools.bazel.e4b/BUILD b/com.google.devtools.bazel.e4b/BUILD
deleted file mode 100644
index c6413dd..0000000
--- a/com.google.devtools.bazel.e4b/BUILD
+++ /dev/null
@@ -1,16 +0,0 @@
-load("//tools/build_defs:eclipse.bzl", "eclipse_plugin")
-
-eclipse_plugin(
-    name = "com.google.devtools.bazel.e4b",
-    srcs = glob(["src/**/*.java"]),
-    activator = "com.google.devtools.bazel.e4b.Activator",
-    bundle_name = "Eclipse 4 Bazel",
-    resources = glob(["resources/**"]),
-    vendor = "The Bazel Authors",
-    version = "0.0.3.qualifier",
-    visibility = ["//visibility:public"],
-    deps = [
-        "//com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command",
-        "@com_google_guava//jar",
-    ],
-)
diff --git a/com.google.devtools.bazel.e4b/build.properties b/com.google.devtools.bazel.e4b/build.properties
deleted file mode 100644
index 29be226..0000000
--- a/com.google.devtools.bazel.e4b/build.properties
+++ /dev/null
@@ -1,8 +0,0 @@
-source.. = src/,javatests/
-output.. = bin/
-bin.includes = META-INF/,\
-               resources/,\
-               plugin.xml,\
-               runfiles/com_google_guava/jar/guava-21.0.jar,\
-               runfiles/org_json/jar/json-20160212.jar,\
-               bin/
diff --git a/com.google.devtools.bazel.e4b/javatests b/com.google.devtools.bazel.e4b/javatests
deleted file mode 120000
index 628a41a..0000000
--- a/com.google.devtools.bazel.e4b/javatests
+++ /dev/null
@@ -1 +0,0 @@
-../javatests
\ No newline at end of file
diff --git a/com.google.devtools.bazel.e4b/runfiles b/com.google.devtools.bazel.e4b/runfiles
deleted file mode 120000
index 2a536a6..0000000
--- a/com.google.devtools.bazel.e4b/runfiles
+++ /dev/null
@@ -1 +0,0 @@
-../bazel-bin/javatests/com/google/devtools/bazel/e4b/command/CommandTest.runfiles
\ No newline at end of file
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/Activator.java b/java/com/google/devtools/bazel/e4b/Activator.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/Activator.java
rename to java/com/google/devtools/bazel/e4b/Activator.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/BazelAspectLocationImpl.java b/java/com/google/devtools/bazel/e4b/BazelAspectLocationImpl.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/BazelAspectLocationImpl.java
rename to java/com/google/devtools/bazel/e4b/BazelAspectLocationImpl.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/CommandConsoleFactoryImpl.java b/java/com/google/devtools/bazel/e4b/CommandConsoleFactoryImpl.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/CommandConsoleFactoryImpl.java
rename to java/com/google/devtools/bazel/e4b/CommandConsoleFactoryImpl.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/ProjectNature.java b/java/com/google/devtools/bazel/e4b/ProjectNature.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/ProjectNature.java
rename to java/com/google/devtools/bazel/e4b/ProjectNature.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/builder/BazelBuilder.java b/java/com/google/devtools/bazel/e4b/builder/BazelBuilder.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/builder/BazelBuilder.java
rename to java/com/google/devtools/bazel/e4b/builder/BazelBuilder.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/classpath/BazelClasspathContainer.java b/java/com/google/devtools/bazel/e4b/classpath/BazelClasspathContainer.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/classpath/BazelClasspathContainer.java
rename to java/com/google/devtools/bazel/e4b/classpath/BazelClasspathContainer.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/classpath/BazelClasspathContainerInitilalizer.java b/java/com/google/devtools/bazel/e4b/classpath/BazelClasspathContainerInitilalizer.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/classpath/BazelClasspathContainerInitilalizer.java
rename to java/com/google/devtools/bazel/e4b/classpath/BazelClasspathContainerInitilalizer.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command/BUILD b/java/com/google/devtools/bazel/e4b/command/BUILD
similarity index 82%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command/BUILD
rename to java/com/google/devtools/bazel/e4b/command/BUILD
index 8d9561c..abad7f5 100644
--- a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command/BUILD
+++ b/java/com/google/devtools/bazel/e4b/command/BUILD
@@ -2,7 +2,7 @@
     name = "command",
     srcs = glob(["*.java"]),
     visibility = [
-        "//com.google.devtools.bazel.e4b:__pkg__",
+        "//:__pkg__",
         "//javatests/com/google/devtools/bazel/e4b/command:__pkg__",
     ],
     deps = [
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command/BazelAspectLocation.java b/java/com/google/devtools/bazel/e4b/command/BazelAspectLocation.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command/BazelAspectLocation.java
rename to java/com/google/devtools/bazel/e4b/command/BazelAspectLocation.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command/BazelCommand.java b/java/com/google/devtools/bazel/e4b/command/BazelCommand.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command/BazelCommand.java
rename to java/com/google/devtools/bazel/e4b/command/BazelCommand.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command/BazelNotFoundException.java b/java/com/google/devtools/bazel/e4b/command/BazelNotFoundException.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command/BazelNotFoundException.java
rename to java/com/google/devtools/bazel/e4b/command/BazelNotFoundException.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command/Command.java b/java/com/google/devtools/bazel/e4b/command/Command.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command/Command.java
rename to java/com/google/devtools/bazel/e4b/command/Command.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command/CommandConsole.java b/java/com/google/devtools/bazel/e4b/command/CommandConsole.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command/CommandConsole.java
rename to java/com/google/devtools/bazel/e4b/command/CommandConsole.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command/IdeBuildInfo.java b/java/com/google/devtools/bazel/e4b/command/IdeBuildInfo.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command/IdeBuildInfo.java
rename to java/com/google/devtools/bazel/e4b/command/IdeBuildInfo.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command/SelectOutputStream.java b/java/com/google/devtools/bazel/e4b/command/SelectOutputStream.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command/SelectOutputStream.java
rename to java/com/google/devtools/bazel/e4b/command/SelectOutputStream.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/preferences/BazelPreferenceInitializer.java b/java/com/google/devtools/bazel/e4b/preferences/BazelPreferenceInitializer.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/preferences/BazelPreferenceInitializer.java
rename to java/com/google/devtools/bazel/e4b/preferences/BazelPreferenceInitializer.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/preferences/BazelPreferencePage.java b/java/com/google/devtools/bazel/e4b/preferences/BazelPreferencePage.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/preferences/BazelPreferencePage.java
rename to java/com/google/devtools/bazel/e4b/preferences/BazelPreferencePage.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/wizard/BazelProjectSupport.java b/java/com/google/devtools/bazel/e4b/wizard/BazelProjectSupport.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/wizard/BazelProjectSupport.java
rename to java/com/google/devtools/bazel/e4b/wizard/BazelProjectSupport.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/wizard/BazelTargetCompletionContentProposalProvider.java b/java/com/google/devtools/bazel/e4b/wizard/BazelTargetCompletionContentProposalProvider.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/wizard/BazelTargetCompletionContentProposalProvider.java
rename to java/com/google/devtools/bazel/e4b/wizard/BazelTargetCompletionContentProposalProvider.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/wizard/BazelWizard.java b/java/com/google/devtools/bazel/e4b/wizard/BazelWizard.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/wizard/BazelWizard.java
rename to java/com/google/devtools/bazel/e4b/wizard/BazelWizard.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/wizard/DirectoryTreeContentProvider.java b/java/com/google/devtools/bazel/e4b/wizard/DirectoryTreeContentProvider.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/wizard/DirectoryTreeContentProvider.java
rename to java/com/google/devtools/bazel/e4b/wizard/DirectoryTreeContentProvider.java
diff --git a/com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/wizard/WorkspaceWizardPage.java b/java/com/google/devtools/bazel/e4b/wizard/WorkspaceWizardPage.java
similarity index 100%
rename from com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/wizard/WorkspaceWizardPage.java
rename to java/com/google/devtools/bazel/e4b/wizard/WorkspaceWizardPage.java
diff --git a/javatests/com/google/devtools/bazel/e4b/command/BUILD b/javatests/com/google/devtools/bazel/e4b/command/BUILD
index 47834db..4ae36dd 100644
--- a/javatests/com/google/devtools/bazel/e4b/command/BUILD
+++ b/javatests/com/google/devtools/bazel/e4b/command/BUILD
@@ -2,7 +2,7 @@
     name = "CommandTest",
     srcs = ["CommandTest.java"],
     deps = [
-        "//com.google.devtools.bazel.e4b/src/com/google/devtools/bazel/e4b/command",
+        "//java/com/google/devtools/bazel/e4b/command",
         "@com_google_truth//jar",
         "@org_hamcrest_core//jar",
         "@org_junit//jar",
diff --git a/com.google.devtools.bazel.e4b/plugin.xml b/plugin.xml
similarity index 100%
rename from com.google.devtools.bazel.e4b/plugin.xml
rename to plugin.xml
diff --git a/com.google.devtools.bazel.e4b/resources/icon.ico b/resources/icon.ico
similarity index 100%
rename from com.google.devtools.bazel.e4b/resources/icon.ico
rename to resources/icon.ico
Binary files differ
diff --git a/com.google.devtools.bazel.e4b/resources/tools/must/be/unique/BUILD b/resources/tools/must/be/unique/BUILD
similarity index 76%
rename from com.google.devtools.bazel.e4b/resources/tools/must/be/unique/BUILD
rename to resources/tools/must/be/unique/BUILD
index a9cd58e..3b68e55 100644
--- a/com.google.devtools.bazel.e4b/resources/tools/must/be/unique/BUILD
+++ b/resources/tools/must/be/unique/BUILD
@@ -1,4 +1,10 @@
 # This is a build file for creating a corresponding package. This package will be added to the
 # package path when using the aspect so we can load the e4b_aspect.bzl Skylark aspect extension
 # when calling build from Eclipse. This package has an improbable name to avoid collision with
-# packages in the main repository.
\ No newline at end of file
+# packages in the main repository.
+
+filegroup(
+   name = "srcs",
+   srcs = glob(["**"]),
+   visibility = ["//visibility:public"],
+)
diff --git a/com.google.devtools.bazel.e4b/resources/tools/must/be/unique/e4b_aspect.bzl b/resources/tools/must/be/unique/e4b_aspect.bzl
similarity index 100%
rename from com.google.devtools.bazel.e4b/resources/tools/must/be/unique/e4b_aspect.bzl
rename to resources/tools/must/be/unique/e4b_aspect.bzl
diff --git a/runfiles b/runfiles
new file mode 120000
index 0000000..3ad15da
--- /dev/null
+++ b/runfiles
@@ -0,0 +1 @@
+bazel-bin/javatests/com/google/devtools/bazel/e4b/command/CommandTest.runfiles
\ No newline at end of file