save person function improved and partial interface added