closes #504
The previous approach was too fragile TODO: we should add separate parsing tables for tactics