ds: 2-3 tree implementation