Allow directives to start with whitespace
Rename parse.[ch] -> directive.[ch]