Self-directed learning and retrieval practice: building a bridge through functional contextualism