Make minor improvements

New: Identify.Piece method.
Change: improve Terminal.Initialize with exception output.
Change: make Position.ToStringAppend and overload of Position.ToString.
Fix Position bugs

Fix: check from castling is not detected.
Fix: making and unmaking null move does not correctly preserve
fifty-move clock.
Fix: black knight initial given as K. This was introduced by the
previous commit.
Fix: material table is copied as reference when deep cloning.
Replace large buffer width with wraparound

New: wraparound of PV output.
Fix: Terminal modification of Console.BufferWidth removed due to
potential problems on some platforms (notably Windows XP SP3).
Update file version

Change: update file version to reflect latest improvements.