Fix #2104 and improve Dropbox constructor performance

I stumbled across this when I saw calls to the Dropbox storage when I did not expect them. The issue in #2104 was called by mkdir being called inside the constructor and root being empty.

I moved the dropbox library stuff into an init function because the storage constructor was called on every page load. <- Now this doesn't make sense to me. @icewind1991 Why is the contructor being called when the storage is not used?