Adding chess960 support.

Added support for chess960.
Added new tests for this.
Some tests that seemed auto generated failed due to missing files. I'm not sure why this was, but I added the missing files and those tests now pass too.
There were also some display tests failing due to difference in OS end of line character sequence. I homogenized this so the tests passed also on Windows.

I'm happy to talk through the changes e.g. via skype. (this is my first usage of Github, so not sure how the tools work here.