>"Get the Facts" campaign against Linux
It was against GNU/Linux, although to utter that name would lead to their loss, therefore they wrote "Linux".
>Microsoft OS's sucked so much a Finnish guy started writing his own OS
That is not true - Linus originally used MINIX, not windows.
Linus got burned by how MINIX was proprietary software and therefore he decided to announce that he was writing his own OS (that wouldn't be big and professional like GNU) and then proceeded to start with the kernel (he never got around to the remaining 90% of an OS), but he originally didn't get very far, as he selected a proprietary license (nobody was interested in another proprietary kernel).
Since then, he has been burned by proprietary software over and over again - he has never learned that with proprietary software, everyone always gets burned.
He only saw success when he re-licensed to the GPLv2-ambigious in 1992, which GNU in good faith decided to port every last GNU package to work with Linux as well (despite all that work done for him, he authorized Linux becoming proprietary software again in 1996, with the inclusion of the first of many proprietary programs, without source code).
Others then released GNU/Linux distributions and many developers tested them out and determined that if Linux wasn't so lacking, the OS would work properly - which attracted thousands of developers to work on Linux.
>teamed with the GNU project for the software outside of the kernel
There really wasn't much teamwork - most Linux developers refused to work together with GNU developers (BSD developers would work with GNU, but not Linux ones - as they considered themselves "Linux users").
Regardless, GNU developers didn't need much help to implement support for Linux's SYSCALLs in glibc and Linux's /sys, /proc and /dev interfaces in packages where relevant.
Linux developers even forked glibc into "Linux libc", which was a complete waste of time, as they weren't particularly good at developing a libc and in the end, all the work had to be discarded, as they didn't bother to keep the licensing in order.
GNU software isn't just outside Linux - it's inside Linux as well - if you want to compile and therefore to be able to use Linux, you'll also need GNU bison, binutils, make, cpio, tar, bash, bc and GCC to build all of it.
After all, you can't have a C kernel without a C compiler, a build system and a linker - none of which existed as free software before GNU developed them and released them.