Facebook reveals what caused six-hour crash, Mark Zuckerberg apologizes