initial commit.
refactoring.
dependencies and tests added
updated info.
updated deployment repo.