PGLog: track dirty_to and dirty_from for log

This allows the log to only write out/clear the keys
which have actually changed.

Signed-off-by: Samuel Just <sam.just@inktank.com>
PG: move instances of log dirtying in PG into PGLog

Signed-off-by: Samuel Just <sam.just@inktank.com>
PGLog: replace dirty_log with mark_dirty_*

Signed-off-by: Samuel Just <sam.just@inktank.com>
PG,PGLog: remove dirty_log arguments

Signed-off-by: Samuel Just <sam.just@inktank.com>
test/osd/TestPGLog: fix pglog unittests for dirty_log and ondisklog

Signed-off-by: Samuel Just <sam.just@inktank.com>
PGLog: add debug check on written keys, verify on write

Signed-off-by: Samuel Just <sam.just@inktank.com>
PGLog,PG: use normal log dirtying and writing for append and trim

Signed-off-by: Samuel Just <sam.just@inktank.com>
PGLog: only iterate over dirty portions of the log

Signed-off-by: Samuel Just <sam.just@inktank.com>