added logic for chess move
add support for after before (t/s notation)
added undo operation