Hi,
If you make your SponsorModule inherit from SiteModuleControl, then you will have an intrinsic ModuleId property available.
You would include your GoldSponsorView.ascx declaratively in the markup of the SponsorModule.ascx and you would manage any properties on the GoldSponsorView from code in SponsorModule.
You can see examples of using UserControls inside a modulecontrol by looking at WebStore/WebStoreModule.ascx, it uses other UserControls internally by first registering like this:
<%@ Register Src="~/WebStore/Controls/ProductListControl.ascx" TagPrefix="ws" TagName="ProductList" %>
then declaring the control in markup like this:
<ws:ProductList id="productList1" runat="server" Visible="true" />
and it sets properties on it from code.
Hope it helps,
Joe