made plaparse less strict about whitespace and ordering, and added .phase keyword