We recently switched from IPfire to OpenWRT in our office. Not only because we let OpenWRT run on an ALIX board (which also IPfire could do), but mostly due to the fact that if you want to extend the system you really can do it. Development of IPfire seems to be quite difficutly, not only technically.
On the other hand OpenWRT quickly provides help if you want to contribute. Also too the “noob” questions you will post in the beginning ;-)
My initial idea was to create a small plugin for OpenWRT which allows one to configure “pptpd” and VPN users using the web interface LUCI. While OpenWRTs configuration system (called UCI) handles the configuraton model in the background, LuCI brings this models to a Lua driven web user interface. UCI and LuCI play well together, you only need to know how it works together.