Ok fags. Port your number to Google voice. Set up an asterisk server to handle calls for it. Screen based on your Google contacts list as a whitelist and forward those to your personal cell number. Those not whitelisted must press one to actually dial your number.
If there's any interest, I can...