Actually, I took a look through the code in the article I linked in my original post, and he has non-member overloads as well, with the following comment above the,

Code:
//	Overloaded operators, left here just as a reference.
//	WARNING: This bloats the code as expressions grow