Further to the post on the 14th of October, here is a complete implementation of versioning attachments in a SharePoint list as a Visual Studio 2010 project.
Once the .wsp has been built and deployed, it can be activated at the web scope. Once this is done, on all lists an item called “List attachment versioning” appears on the List Settings page. When accessed this allows the user to switch attachment versioning on or off. This in turn will create a hidden document library and hidden fields as necessary to support the attachment versioning.
Please do try it and let me know what you think.
Update: 17/11/2011 – Error fixed where the solution only works on a root site.