added web tests, mobile tests, refactoring