Move collection out of app file and extend its interface