Really simple NEWB questions... What are the { } for?

Global, Setup and Loop can be in any order as Loop

Well, you have to declare global variables before you can access them, so something like

void Setup() { pinMode(myled, OUTPUT); }
void Loop() { digitalWrite(myled, !digitalRead(myled)) }
int myled = 13;  // global variable definition.

will fail to compile. If you had global variables that were referenced by some library (a bad idea!), they could theoretically be declared anywhere in your sketch.

I wouldn't say "simplified"

In this particular case, I WOULD say "simplified" because of the automatic prototype generation.
In a normal C program, you would need to define or declare function before they could be used by other functions, and that's not necessary in the Arduino environment.

void Setup() {
  int mypin = get_blink_pin();
  pinMode(mypin, OUTPUT);
}

void Loop() {}

int get_blink_pin() {
  return EEPROM.read(100);
}

would work in "Arduino", but not from a plain C/C++ program.