Unicorn improvements

This PR contains a number of improvements on top of @ScotterC's Unicorn PR #419. The biggest change is that the Unicorn upgrade process is now safe for heavier apps that take a longer time to restart; previously it could timeout or fail to start workers appropriately. There are also some nomenclature/error msg standardization and increase in configurability.