Android image chooser with listener callbacks. Also allows user to choose image from library or camera.