added severl comments;
preventing interface functions to be called directly;
small changes to be tested;