3: Introduce abstraction for values and elements 
Moved test case into correct source folder