added rook and bishop. some code cleanup