Moved abstract operations to separate json file
Restructured and added unit tests