Username Availablity Figured out:

Semaphore added to Main UI Thread
Custom Listener Class Updated
Registration Fragment Update to handle listener