adding gradle wrapper; refactoring 'unit' interface and its usage