If you're only going to run WP on your domain, I would suggest installing it in the domain root (so you get http://www.yourdomain.org/wp-admin/ etc)
If you want to run it in a subdomain called blog or wordpress or whatever, you just need to add the path changes to the wp-config file and admin backend as per the install instructions...
You were correct in installing WP in the public folder as these files are going to be served/do their magic on the part of the server available to the public via your domain on the internet.
As far as the theme goes, you unzip the theme files (e.g. astro theme) and put them in http://www.yourdomain.org/wp-content/themes/astro/ etc)
All folders should have 0755 permissions, all files 0644.
What is your URL?