Implemented Pieces (Need Tests)