Add "BOM" (Bill of Materials) for easier use with Maven

Guice extensions must generally have their version match the one
of Guice. Maven provides an easy way to make sure this is the case
with “BOMs” [1].

To make sure all your Guice dependencies (either direct or
transitive) use the same version (unless overridden), just add the
following to your <dependencyManagement> section:

    <dependency>
      <groupId>com.google.inject</groupId>
      <artifactId>guice-bom</artifactId>
      <version>${guice.version</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>

[1] https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Importing_Dependencies
Merge pull request #874 from tbroyer/guice-bom

Add "BOM" (Bill Of Material) for easier use with Maven
Copy ManagedFilterPipeline/ManagedServletPipeline to AbstractFilterPipeline/AbstractServletPipeline
Proof of concept: make servlet/filter pipeline more extensible

 * Extract common code into abstract base classes
 * Expose selected interfaces to support external implementations
 * Rebase default implementations to extend the abstract classes