* Update several logging facilities
* exception handling
add git ingonore file list
modify the output file places: now we first choose sdcard if applicable,
otherwise internal storage with world read permission
try to kill all warnings but still one remaining: complaining about not
using the latest SDK ... well, we can not~~