Add large amounts of custom data to contacts
You need to configure one or more Custom Data Sets to contain the information you wish to maintain. Generally you would want to split the information across data sets to reflect any natural categorization, for instance having datasets for 'Wiki Report', 'Extensions', and 'Statistics'.  

If you are planning on using the API to load the data, you don't necessarily need profiles (unless you anticipate also doing some manual entry). Profiles can also be used for display, but (if on Drupal) you may find views much more useful for display.

(datasets maintain the actual definition and storage of custom fields; profiles generally provide forms for the entry of the custom field data, or for display of information.)

Using the API is fairly straightforward so you shouldn't have any problems with that I don't think.  Using the API explorer (yoursite/civicrm/api/explorer) is a hugely useful tool for figuring out the proper call methods.