By the fact "Only users with twitter accounts will have access to this, and I will require users to sign-in to be able to access this button" it simply means that the user ALREADY has login, before you start creating the HTML page.
Ie, before login, the user will see a form of HTML page, but after login, and at your webserver you have authenticated him via OAUTH2, then you will create the HTML specifically past-login.
That will also help to answer "the user has actually tweeted it", as you can now link the userid, with the tweet counter for specifically that user - 0 or 1. Ie, you need will need to maintain a database at the server side of all userid who have tweeted it, and then add/remove everytime a new user added to it, or old user remove from it. (which answer question 2)
Now, finally is the display of button: simple, just check the database, if the userid is there, display it, otherwise don't generate the button for the HTML.