cleanup
en passant support and testing