Adding forward declaration safety, simplifying some templated names