Having a self-hosted site makes you the manager of certain behind-the-scene things you have never before needed to do. Specifically, and as one example, you will be responsible for maintaining an htaccess file in your BlueHost account’s root folder — all of this is completely separate from logging in at your website — and doing that will require using FileZilla or some other file manager to directly access the servers for your site. So, I would begin by installing FileZilla (client) on your computer and having the BlueHost Support Staff help you get connected via SFTP (since FTP broadcasts everything including you host login credentials unsecured):
https://my.bluehost.com/cgi/help/248.
I knew nothing at all about any of this when I first started, and the BlueHost folks helped me all along the way.
Next, and for a variety of reasons, I would move your WordPress installation into a subfolder at BlueHost…and you can do that without adding anything to your regular mysite.com
link or in any way altering your WordPress installation. BlueHost uses a special htaccess file to take care of all of that:
https://my.bluehost.com/cgi/help/347#redirect.
note: Use the htaccess file mentioned there and do *not* “Give WordPress its own directory”. I have my primary domain and two subdomains set up that way there at BlueHost and everything works perfectly.
Actually moving your site is really more about copying your database and files from wordpress.com and pasting them in at BlueHost. Your database contains everything other than what you have uploaded (photos, etc.), and the only thing actually “moved” has to do with ultimately re-pointing your site’s link to the new servers…and again, the BlueHost folks will help you there.
As to plugins you might eventually need or want, JetPack will get you close to having your self-hosted site similar to what you had at wordpress.com.