Improve Swift usage in platform_channel_swift some more
Make a bunch of changes that willlarche requested in
https://github.com/flutter/flutter/pull/21712:
* Use `static let` within `enum` namespaces for String constants.
* Use `guard` for early exits and to avoid forced unwrapping.
* Explicitly qualify a selector.
* Fix a retain cycle by using a weak reference.
Make platform_channels_swift use more idiomatic Swift
* Remove semicolons.
* `if (condition)` => `if condition`.
* `Class.init(...)` => `Class(...)`.
* Remove `break` statements from `switch` cases.
* Remove some unnecessary uses of `self`.
* wip
* wip
* delete main.m
* readd main.m
* update to use new channel api
* update android
* removed android/
* remove debug print
* remomved main.m
* Update year in copyright
* break long line and update name
* mit comments
* update examples/README
* break line
* update README
* update test