Finish namespace conversion

Directories should reflect namespace structure. Moved all classes that the consumer shouldn't care about into a different namespace.
Do we have something preventing someone from `using Lingual.Infrastructure`? I understand namespacing for separating different things, but I didn't know you could "hide" a namespace.