adding dependencies and some cleanup