Redesigned scopes to enable custom implementations. Renamed DependencyException to ConfigurationException. Cleaned up Container's interface. It now returns a Factory instead of a direct instance so clients don't have to keep passing in the paramters resulting in a map lookup. Added support for injecting Factory<T> where T is any bound type.

git-svn-id: https://google-guice.googlecode.com/svn/trunk@17 d779f126-a31b-0410-b53b-1d3aecad763e
diff --git a/src/com/google/inject/Scopes.java b/src/com/google/inject/Scopes.java
new file mode 100644
index 0000000..51e99b5
--- /dev/null
+++ b/src/com/google/inject/Scopes.java
@@ -0,0 +1,21 @@
+// Copyright 2006 Google Inc. All Rights Reserved.
+
+package com.google.inject;
+
+/**
+ * Scope constants.
+ *
+ * @author crazybob@google.com (Bob Lee)
+ */
+public class Scopes {
+
+  /**
+   * Default scope's name. One instance per injection.
+   */
+  public static final String DEFAULT = Key.DEFAULT_NAME;
+
+  /**
+   * Singleton scope's name. One instance per {@link Container}.
+   */
+  public static final String SINGLETON = "singleton";
+}
\ No newline at end of file