More bug fixes, still need to look at execute()