added thread safety as an optional feature and needed restructuring for that
split application build rules away from the launcher proper