clean-up and bug fixes