Extensive changes to OOP architecture on pytest4, possible workable code