Bind the controller method early and fail-fast
Merge pull request #18 from gitblit/earlybind

Bind the controller method early and fail-fast
Add a Guice module and demonstration
Merge pull request #19 from gitblit/guice

Add a Guice module and demonstration
GuiceDemo2 is about inject ContactService in Application and retrieve it in Controller via Application (without @Inject)
add missing license header
minor change
Add a bind() builder method for chained response setting
Create JsonEngine and XmlEngine interfaces, remove Gson from core

Gson is now a separate module which is referenced by 'pippo'. An
alternative engine based on fastjson is included. An xml engine based
on XStream is also included.
Merge pull request #20 from gitblit/bind

Add a bind() builder method for chained response setting
Merge pull request #21 from gitblit/engines

Create JsonEngine and XmlEngine interfaces, remove Gson from core
pass Application as parameter in the Response constructor
using Type Parameter Naming Conventions (https://docs.oracle.com/javase/tutorial/java/generics/types.html)
Enhance response cookie management, defer add cookies till "commit"

Deferring adding a cookie to the servlet response allows Pippo handlers in the chain to retrieve a cookie set upstream.  Once a cookie is added to the servlet response there is no api to retrieve it.
Set default response encoding to UTF-8

Servlet responses to a browser already have an encoding.  For me this is 8859-1.  I think it would be more correct to fix the default encoding to UTF-8 than to default to the request encoding.
Access cookies through the Request object
Add RuntimeMode methods to PippoSettings and use that instead of RuntimeMode.getCurrent()
Add a Languages class for handling Request/Response cycle & Application language requirements
Add a Messages class to load and response to requests for localized messages
Merge pull request #22 from gitblit/messages

Languages & Messages