completed basic add functionality and local storage