Reduced recalculations of autocomplete view position and calls to makeFirstResponder:

Improved the tests to determine if autocomplete text/table view should be displayed or switch first responder status based on if they are currently hidden or not.
Minor organizational change in PLAutocompleteViewController.m
Fixed issues with selecting text with autocomplete text view displayed.

Added a NSTextView subclass, PLAutocompleteTextView that is used for the autocomplete text view. It posts a notification when it receives a mouseDown event, which the controller uses to hide the autocomplete text view. PLAutocompleteViewController now responds to the NSTextDidEndEditing notification for the autocomplete text view, which it uses to hide this text view.

Outstanding issue:
    Selecting text outside of the autocomplete text view doesn't hide the table view until the text is no longer displayed.