robots.txt is mostly a way to keep bots out. If you want to welcome them all, you do not need one.
You might want one, even if you leave it blank, so as to avoid 404 errors. When the good bots (that is, the ones that respect robots.txt instructions) come by, they will look for the robots.txt file. If it isn't there, you'll get a 404 error in your logs, due to the bot having requested a file that doesn't exist. I have a client whose site was getting an astonishing number of 404 errors, and they were all due to not having a robots.txt file.
I don't think having a robots.txt file is listed in the list of things to do to improve ranking.
I believe this is correct. Since the file only blocks (good) bots from files, it would do nothing to encourage those bots to access your site in the first place. But if you block all bots, then your site wouldn't get crawled; this would prevent your getting ranked (since, as far as the bot is concerned, you don't exist).
would it be best to just accept every spider to get a good ranking?
I don't know that you'd want
every spider; that will depend on what you've got to protect from spidering. I think the robots.txt file is more often used to "hide" things like private directories (a family page, say, that you don't care to see in the search engines). That is, you would use the robots.txt file to "hide" just a part of your site. You can still leave the part you want in the search engines open to all the bots.
Eliz.