maybe default $MobileDetect to NULL, and inside each closure, check if it's null and initialize it?

then it won't be created as an instance until used :)