Support for fmt! expressions.

The syntax is close to that of Posix format strings:

Format := '%' Parameter? Flag* Width? Precision? Type
Parameter := [0-9]+ '$'
Flag := [ 0#+-]
Width := Parameter | [0-9]+
Precision := '.' [0-9]+
Type := [bcdfiostuxX?]

The types currently supported are: