Added some new stuff, also Fisher-Yates shuffle