How can I survey anonymous users before they can read content?
Thanks for the help.

I ended up using the rules module along with rules url argument module. 

I used the rules module to watch out for anonymous users, and query strings of "?surveycomplete=yes". I did this check for all nodes of my desired type that did not have a node reference to a webform. 

If a user was anonymous and did not have the query string, then I redirected to the webform that the node was associated with. 

To make the webform redirect appropriately when it was completed I changed the redirect location to the original node with the query string appended.

The downfalls with this approach is that every node that there is a 1 to 1 relationship for content to webforms when a many to 1 would be nice. Also, anyone could technically by pass the survey via appending the query string.