seperating auth functionality
authorazation responcibility seperated, finalized