Your questions are all covered in the documentation (explicitly or implicitly), but I understand that might be hard to dig out. So I'll add some quick answers here:
- There is no Web.config as Fredhopper is Java and runs its own internal web server.
- See above. This shouldn't be relevant for you at all, by the way.
- The topology.txt file is in Fredhopper\config.
- Typically you would want separate index and query servers so that the query server can have 100% up-time. For non-production systems you can run them as separate instances on the same machine.
- Yes. As mentioned in #4, you need an indexer and query instance.
If you haven't already, check out the Quick Guide to installing SmartTarget page in the documentation. It's more visual than the rest of the documentation (lots of screenshots). Of course, there's also the Installing and upgrading SDL SmartTarget section of the documentation which has a lot more details but is far more text-based.