Merge remote branch 'origin/feature/8434_remove_first_point'
Refs #8509 processheader() now checks more thoroughly

processheader() used to get called after checking the base number of collumns, which was what was cusing the error.

processheader() is now called before setting the base number of collumns and will set the base number of columns as it checks, but only if the user doesn't specifiy a number of columns to skip. processheader() will check for a number of valid lines with the same number of columns (between 2 and 4 inclusive), skipping over and commented or blank lines, and resetting the matching counter when it hits an invalid line of any sort.
Refs #8509 Fixed skipping calculation and fixed other various errors

The calculation of how much was skipped was wrong as i was skipping over lines that were neither data or invalid wihtout taking note of them, a new conter was added - validRows - in order to keep track of how many valid lines there have been consecutively (data or not). This is then used instead of rowsToMatch when calculating numToSkip.

Corrected spelling of "Column" from "Collumn" in many places.

Fixed the bad line check to allow + and - as it had not been updated when they were classed as allowed leading characters

Refactored some of the unit test in order to allow the tests that don't use SaveAscii directly to access a correct absolute path.
Merge branch 'bugfix/8509_Fix_LoadAscii_Header_Skip' into develop