Decouple LedgerMaster from configuration

Pass necessary arguments into `LedgerMaster` to avoid coupling with the `Config` object. Reviews by @ximinez and @rec (welcome back!)