I'm not clear as to the purpose of these preproccer directives in all my header files
#ifndef _FILENAME_HPP_
#define _FILENAME_HPP_

also is it neccary to include <iostream> in my header file if it is included in my main file?