Just invalidate on dispose.
Remove weak pointer ref.
Use default RunLoopMode.
Add documentation.
Fix Xcode build config.

Remove unnecessary framework linking.
Header publication.