initial commit with basic outline
namespace fix
with headers