added scroll effect, basic refactoring, new property