Added `remove_on_fail` error handler

which removes data if checker returned `false`
Removed std::cout debug printing
Uses result_error_handler instead of std::function
Added log output + description of error handler
Merge pull request #162 from iderikon/master

Added `remove_on_fail` error handler