(GEP-178) Geppetto Ruby parser should be able to hande BOM's

Add a factory to create an InputStreamReader that is configured
according to a BOM header found on input.