FreePBX/Asterisk is a good alternative to this, if a pain to administer. Twilio seems great for a request/response Web app, but going much further than that seems like it'd be a challenge (by design; Twilio seems to emphasize that model and simplicity). Rather than have Twilio hand off to your 'office number' for extensions and voicemail and such, you could just have both in the same place, which is the Asterisk appr…
I don't actually use it, but I like the basic idea: spend your expensive programming time on places where your unique contribution adds value to the business. Common infrastructure code, on the other hand, is like a web server: download the appropriate bit of OSS, drop it in, go back to doing valuable work.
(I do my voicemail with a Twimlet, which is a less powerful version of the same idea: here's the minimum viable voicemail-to-email script, just copy/paste this URL into your config and you're good to go.)