lots of changes

- prestart wait support
- locking support so that only one instance of uc is running at a time