Structuralism as a Philosophy of Mathematics