Added limited branching for performance test.
Removed unecessary distinct call
Removed unecessary castings
Testing performance simpler distinct
Using iterable distinct seems to marginally improve performance
Using iterable child seems to marginally improve performance
None filter is not necessary at ai.
Significant ai speed improvement
Simplified spell result function
Simplified children function
Further attempts at improving performance.
Changed libs versions

Updated the scala version and scalatest, removed the logging library
improved changed the codding style to conform to the new standard.
Greater converted compositions to val to improve speed
Fixed combinations test
Removed spell repetition
Added exception for 0 depth search