Configuration files

Do not merge - this is a preliminary PR for discussion.

As of now, incorporates Dolphin's INI code for a configuration system. So far, handles for input controls have been added, but they haven't been hooked yet into the parts of code that use them. 
I disagree, it can be used this way for basically every configuration format I can think of that uses a key-value-based system. The section is there for record-keeping purposes, it helps keep track of what settings belong where. In a format that doesn't use sections, the section can be anything from the current table, filename, or any other identifier that can help distinguish key-value pairs.

Obviously, a table-based system is a completely different paradigm from a key-value system. I don't think there's a trivial way to keep track of both table data and key-value data in the same system without serialization magic.