Added boardid_hash(), for GHashTable usage.

Also tweaked boardid_equal() to match the GEqualFunc type.

A bit annoying with the gconstpointer and gboolean sneaking in, but oh well.
Snapshot, boards get stored in the GKeyFile now.

No actual settings happening though.

Not 100% sure about the architecture here, but it seems at least reasonable.
First actual GUI code for board settings.

Very incomplete, and since there's no code to initialize the known_boards hash on load, autodetect must be clicked first.