Moved exceptions to the top herald package

This avoids cyclic dependency between herald and herald.exceptions packages.