Agile Manifesto says that you should value Responding to Change over Following a Plan, however it doesn't mean that you should include every Change Request demanded by Client ASAP.
Look at Scrum - you have Iterations and when you decide upon stories that would be acomplished during the Iteration the scope is frozen and you can prioritize tasks for the next Iteration.
Look at Kanban - you are trying to limit Work-In-Progress, so if you have started a task, you try to finish it before starting another one (newer, more important) and another (even more important). Customer can change priorities of the features that haven't been started yet.
If you have a lot of new requirements and this is a problem for you maybe you could find a person responsible for managing the change and showing the Client that if requirements are changing so rapidly maybe he should rethink the big purpose for the system.
As to documents we estimate every task that is done and wasn't estimated before and charge customer for it and we keep a track of such items in a spreadsheet. We also maintain a big document which contains all the requirements, we update it in review mode and we send to the Client for approval.