Scala based implementations of Functional Data Structures from Okasaki