Removed duplicate code from piece
Made Piece use Java8 features to trim down the code a lot