I would also recommend OpenWRT - to anyone who's tech-savvy enough to upload a new firmware file and go through a web interface to set up the network. I was used to setting up things like Mikrotik or OpenBSD+pf (which while great, are not exactly intuitive), and was surprised it's really no more difficult (often less difficult) than using whatever stock web UI these SoHo routers usually come with.