Support the definition of interfaces and class implementations

AppKit and UIKit make heavy use of subclassing and application-specific delegate objects. Hence, to use Cocoa (Touch) from Haskell, we need to be able to support that conveniently:
- [x] Two new inline forms `objc_interface` and `objc_implementation`.
- [x] Always generate a `.m` and a `.h`. Put all includes/imports into the `.h`.
- [x] Generate prototypes for the C functions wrapping inline ObjC expressions.
- [x] Generate `foreign export`s for access to top-level Haskell variables & functions in `objc_implementation`.
- [x] Add an app delegate to `HSApp`.
- [x] Test with the app delegate in the `HSApp` example.