Namespace classes with their subdirectory

This addresses both Issue #12 and Issue #19