added 4 implementation files, removed item.cpp