Completely rehauled Authenticator logic and updated all calls.
Added JSONMap interface to convert JSON response to <K, V> format (not
done)