* craft-mesh OBJ: map_* options are passed over by their argument counts
A map line with options named its image by its final token, so
'map_Kd -o 0.5 0.5 my checker.png' named 'checker.png'. Options are now
skipped by the arguments they take (-o, -s and -t take one to three
numbers), so a name with spaces after options is one name. After an option
the reader does not know, the name is still the final token.
Ported from storytold/effectcraft#1324.
* craft-mesh OBJ: a material library named again is read once
Exporters repeat the mtllib line for every object. Each repeat asked the
resolver again, read the library again, added its materials and images a
second time, and counted its bytes against max_data_bytes once per line, so
a legitimate file with many objects could reach the limit.
Ported from storytold/effectcraft#2965 (its OBJ part: 'a library already
loaded is skipped').
---------
Co-authored-by: Lloyd Nicholson <nichlloyd@gmail.com>