Added source code, tests and documentation that was created as part of Google Summer of Code 2014 by Gerardo Huck.