Adds documentation for main view controller and request class

Also fixes the return value in delegate method and removes unused enum value for permission state
Might be nicer if this was called `DoNotAskAgain`, so that it mirrors the `AskAgain` state above?