Android marshmallow permission handling http://www.codexpedia.com/android/android-6-0-marshmallow-permission-handling/