cancan introduction. upload a folder recursively