Moved all definitions in hpp file