Using a different thread pool for every routine instance + Fixed consumer lifecycle + Updated build scripts