Simplified directive existence errors exceptions

The first argument of the `existence_error/2` term is now the atom `directive` instead of the atom `opening_directive` or the atom `closing_directive`.