I'm the past PM that worked / owned the direction for the Social Post and Social Persona object. It's more of a collective of us though now since the Social Enterprise vision has kicked it up a couple notches. Sorry I didn't come on this thread sooner.
Basically all the information is right in different degrees as laid out above.
Historically during beta and before Radian6 was acquired, we had custom objects the Social_Media_Persona__c object and the Social_Media_Post__c object. Since the acquisition we've started to rebuild these objects, SocialPost and SocialPersona in core to make them standard objects. There was a hiccup at one point though around exposing these newly established objects via API to ensure terms of service compliance around the data being stored in the objects. Our intention is to make them standard and generally available. We haven't locked in on a release date yet though.
At the present time to see them from the UI layer you'll need to enable Social Accounts and Contacts. Then as a very sharp contributor above pointed out the Social Persona will be created in support of any Contact you make a social connection with (by clicking the Facebook or Twitter icon for instance). The idea here is the Persona as a child object of the Contact will contain the varying and different values we're able to acquire through various means, such as Social Key (Data.com) or the Social Hub (Marketing Cloud) or through your manual connection.
You'll require special permissions to gain access to those objects via the API because their not completely done and there will be changes to them over the next several major releases of Salesforce.com. So of course I'd caution you against creating any customization on those objects that runs too deep (beyond prototype) until such time as they are officially Generally Available and published in the API and aren't controlled by special permission access. (expect schema and column changes)
To achieve OP's use case I would suggest the use of the Persona object. The basic business justification behind that is because most of the internal social products are aligning around the use of the Persona object. As such using it will ensure if you bring any other social processes online you'll have a means to control / reduce / eliminate duplicate social contacts. I'd also suggest taking a closer look at the use of the custom object as the parent. Person Accounts are the generally used B2C approach. I suspect though with our companies foray into the social enterprise, to see some investment and attention around the B2C space in the releases to come at some point in the future and I would imagine some attention to improving "person accounts". By hitching your wagon to the Person Account you are more or less increasing the probability you'll be able to leverage B2C advantages and functionality for free (figuratively from a programming analogy) that are added to the platform as they're developed.
I should point something out though about the present schema; there is a native relationship control field called the "Who" field which establishes a parent look-up. The fact that this is currently limited to Leads and Contacts only may pose a slight challenge for you a little further down the line if you introduce additional social processes or start using Social Contacts. You may encounter a situation where a Contact w/ Persona could contain duplicate Persona and Custom Object data all which is really the same real social person. You'll want to mind that for data hygiene reasons.
I think it's a great feature request though to perhaps not require the Persona to need to be parented by a lead or contract and open the ability up for it to be parented by custom objects for the use case you have outlined. Further we should consider custom search and match logic to ensure that once you've instantiated this custom relationship that you can dictate to any other social process where we should be looking to potentially prevent duplicate creation (or at least a good effort based on the objects and fields you specify to look for unique social ids like a Twitter Author's Unique ID).
Hope this helps..
Edit: to gain access to Social Post / Persona via API / Apex you'll need to contact email@example.com and again caution, they are not in a complete state, there will be changes to the relationships in the objects and the standard fields they contain, so I wouldn't do more than prototype on them until they are locked in on a G.A. state or at the very least don't tightly couple your apps to them. Please provide your Org ID to support and the use case you have in mind.