Implemented everything. Need to fix getCost