moving interface helpers to the bottom
adding abstract hook for single file retrieval