Adding provided workspace dependency projects to NonRuntime container

A quite common use-case is keeping both the application project and the
test project in the same workspace, where the app project is a provided
dependency of the test project. In this case m2e workspace resolution is
triggered, which adds the project as a classpath entry instead of the
jar library. The current code does not aware of this situation and keeps
the project entry in the Runtime container.

This commit addresses the issue, by adding the project entry the the
NonRuntime container and removing it from the Runtime one, but only if
the discussed m2e feature is in use and the dependency project is open.
Tests for provided workspace dependency project feature

This commit contains tests for the feature implemented in the previous
commit.
Refactored shouldResolveWorkspaceProjects and getNonRuntimeProjects()

Per Ricardo's comments, the first method moved to EclipseAndroidProject,
the latter is now handled by the classpath configurers.
Fixed un-logged exception.

Fixed error where exceptions would silently fail without reporting their
cause. We should always log exceptions when we catch them and do not
rethrow.
Tidied provided workspace test code.
Added test for disabled workspace resolution.

Added a test to verify disabling workspace resolution in Maven Eclipse
doesn't break functionality.

This change included modifying import project code so you can modify
resolver configuration.
Re-factored open workspace non-runtime projects code.

Re-factored the code that adds non-runtime projects open in the Eclipse
workspace to the non-runtime classpath container. Changes include:

 * Removed redudundant guard statements that duplicate filters for
non-runtime
depednencies.
 * Re-factored find open project Workspace dependencies method into the
`AdtEclipseAndroidWorkspace` class.

This simplifies the code and increases separation of concerns.
Re-factored list transformation code.

Simplied list transformation code using FluentIterable:

http://docs.guava-libraries.googlecode.com/git-history/release/javadoc/com/google/common/collect/FluentIterable.html
Fix to support non-APK workspace projects.

The previous support for dependency resolution for open Eclipse
workspace projects only worked for APK projects. This adds support for
all project types.

I introduced some technical debt now that the system needs to be aware
of non-Android dependencies. Code to convert Eclipse to Maven project
assumed we're only interested in Android-projects and throws exception
for non-maven projects. This duplicates code elsewhere.
Fixed whitespace and unused imports.