use canonical path to SD card to make sure its a real path (fixes #64)

It seems that the new /storage dir structure has some weird tricks in it,
and the path that Environment.getExternalStorageDirectory() does not always
return a real path, but some kind of special emulated path.