I'm reasonably familiar with the ZFC axioms. I know they can be formalized in many different ways. However, I usually see them presented in terms of the elementary "propositional calculus primitives" $\rightarrow$, $\neg$, $\wedge$, $\vee$, $\leftrightarrow$; the "predicate calculus with equality" primitives $\forall$, $\exists$, $=$ ; and the single "set-theoretic primitive" $\in$. Then one usually proceeds to define other set operators like $\subseteq$ (and everything else) in terms of $\in$.
What happens if you instead take $\subseteq$ to be the primitive operator of set theory, and define $\in$ in terms of $\subseteq$?
Obviously we could rewrite any formalization of ZFC by replacing each occurrence $x \in y$ with $\{x\} \subseteq y$, but this would not be the most compact or elegant formulation. For example, it seems to me that Extensionality could best be cast as $x \subseteq y \wedge y \subseteq x \rightarrow x = y$.
Surely someone has studied this question and presented an elegant formalization of ZFC based on $\subseteq$. Where can I find it?