numerous improvements, refactoring, added initial bus positions