moved all functions (except .getready) to external

also commented on where backend needs to be put in