Extensive commenting and added a backend public methods documentation md