Separate classes headers and implementations