Adds more generic exception to stages' init() method

Fixes #189

`init()` now declares a second, more generic exception (`InitFailedException`) for when initialization of a stage fails due to factors other than missing or incorrect arguments (such as connection failure to external service).

Changes output stages to use the new exception.