major rebuild
now using supervisor for extra flexibility