started a new dev branch for "micro"
fixed the unicode issues
respectfully borrowed lots of goodies from https://github.com/rack4java and adapted some of them. The test units are all passing now. Much more to come.
added support for null keys and values.
removed some goodies I don;t really need for now.
fixed the test servlet to emit a correctly encoded body
grrr... added a bit of redundant methods in the RackBody but I will revisit them with the promise to add varargs. Anyway, also fixed the echo example, this one too is properly reading the encoded input stream and will echo back properly encoded characters
use utf-8 for response even when falling back on the container, Jetty for example will not set it unless specified by the browser ....
cosmetics
added a init method to the Filter implementation, will test and most probably promote the change to the Servlet too
RackFilter will also display the client stack trace
the RackFilter is using now the ServletPath when the PathInfo is null
added a simple utility to StringUtils: converting an array to a delimited string
path_info and servlet_path must be transmitted to the client as they are received, the client may decide the upon using the servlet_path as path_info not us.
MIME support for returning "application/octet-stream" if there are no types defined for the given extension
removed the log warnings, maybe will come back and check for  log.isDebugEnabled.... before displaying any internal info messages
added NIO support for streaming Response bodies of type File
set Response' character encoding to utf-8 but only for non-File resources
get the browser's preferred locale info
introduced the convenient Rack.RACK_BROWSER_LOCALE containing the request.Locale and renamed the support for Accept-Language