Added some more docs, refactored retrieve and variable classes
Added some more docs, refactored retrieve and variable classes