Added model namespace and separated source and header files where needed