File structure reorganization to match the logical project organization.
We still have .m files next to "public" .h files, which is suboptimal. More organization required.