I have tested your code and the blink example too. At the beginning I didn't have any problems. The onboard LED was blinking and the IO13 was changing too. Check the picture below.
Then I rebooted the board with the reset button SW1U15 and ran again the sketch but this time the onboard LED was blinking but the IO13 wasn't changing as it should have. See the picture below.
I had to power off the board. When I powered it on again and uploaded the sketch everything worked fine. So this time I ran the command "reboot" in the Linux terminal to reboot the board instead of using the reset button and this time the LED and the IO13 were working as they should. So the issue happens when you use the button SW1U15 to reboot the board.
I checked the Hardware Guide of the Arduino Expansion Board (http://download.intel.com/support/edison/sb/edisonarduino_hg_331191007.pdf) and I found the description of the SW1U15 button. It says the following:
System reset. Pressing the system reset button (SW1UI5) will reset the Intel® Edison compute module, and
reset the I/O expanders, setting all the shield pins to high impedance state with no pullups.
So according to that description this behavior on the IO13 is expected to happen. But, why is the LED still blinking? I checked the Arduino Expansion Board schematic (http://download.intel.com/support/edison/sb/edison_arduino_hvm_8_26.pdf) and I found that the LED is not connected directly to the IO13. There is an IC between them, the 74LVC1T45. This IC is enabled by the PCAL9555 IC which is the IO expander that is reset when the button is pressed. The IO13 is connected to the 74LVC1T45 and since it is not enabled after the reset, the IO13 is in high impedance but the LED is connected before that IC where the signal is still toggling. That is why the LED blinks but the IO13 doesn't change.
I hope this information has answered your question.
This was hugely helpful. Thanks for taking the time to sort it out!
I'm running into the same problems after I press the Reset (SW1U15) button none of the IO pins is working anymore. Is there a way to get them running again without unplugging the system. I'm using the arduino IDE.
The reset button will set all the shield pins to high impedance state (I posted a more complete explanation above). You can use the "reboot" command instead. This command will reboot the Edison without setting the pins to high impedance.