added data class and continued working on interface.py