added basic session functionality