Fix several bugs with the STL reader
On windows ifstreams handle data differently depending if the file was opened in binary mode or not. This messed with the parsing for some files. Fixed reading a binary file into any other scalar type other than float. Binary STL always contain 32 bit floats, but the parser depended on ScalarT for how much data should be read, which can lead to false results if e.g. a double position type is given.