A cheat sheet for programming patterns used in Android Infrastructure and developing efficient multi-threaded android apps