Only reset pin.watchLastCount when it is valid.
Fix for Android bug that causes duplicate baseactivity launches.
Store cache files on the dir returned by getExternalCacheDir, if available.
Closes #7