title: What are the scopes of GIN bindings?
body: <p>I wonder what scopes folowing two bindings have:</p>
  
  <pre><code>bind(PermissionManager.class).in(Singleton.class);
  </code></pre>
  
  <p>and </p>
  
  <pre><code>bind(PermissionManager.class);
  </code></pre>
  
  <p>I have read the JavaDocs, they are as following. For Singleton:</p>
  
  <pre><code>/**
  * Apply this to implementation classes when you want only one instance
  * (per {@link Injector}) to be reused for all injections for that binding.
  *
  * @author crazybob@google.com (Bob Lee)
  */
  </code></pre>
  
  <p>For no scope:</p>
  
  <pre><code>/**
  * No scope; the same as not applying any scope at all.  Each time the
  * Injector obtains an instance of an object with "no scope", it injects this
  * instance then immediately forgets it.  When the next request for the same
  * binding arrives it will need to obtain the instance over again.
  *
  * &lt;p&gt;This exists only in case a class has been annotated with a scope
  * annotation such as {@link Singleton @Singleton}, and you need to override
  * this to "no scope" in your binding.
  *
  * @since 2.0
  */
  </code></pre>
  
  <p>What does this mean in practical terms? Are singletons per client or per JVM? For no scope, is every instance different?</p>