string parser
initial typing stuff