Just in case it's a possibility for you, if you were to move to SQL Server 2016, you may find that
temporal tables would provide the necessary functionality without requiring much work on your part.
Good point but it will not record who/which connection made the changes.
😎