reliable application

This project uses some techniques from funcional programming to build more reliable software.