undoredo, small additions and better code smell

https://github.com/silexlabs/Silex/issues/66