Remove surfaces linked to the current resource when unbinding
Since the current implementation of unbind() frees the
entire surfaces list when unbinding, if the unbind is
executed after a new bind/get_surface request, this would
erase surfaces that should not be deleted.
Thus, store the resource pointer when acquiring surfaces,
and when unbinding remove the surfaces that are linked to
the currently unbinding resource to ensure the surfaces
that are currently in use, are not being lost.
Change-Id: I3e43ca7f991e9d09f78b11fc5c3e9be3e196ef22