In the 3.0 code, there is a generic override for fql.query where you can pass in the type and it will deserialize for you.
The caveat is that you need to use a type that will match the fql result you are getting back. For all the cases I have run into, you can use one of the response classes like users_GetInfo_response
And it will give you the strongly typed object that was returned by the fql. You can see this used by many of the classes in the BindingHelper namespace.