#include vs forward declare