May make more sense for LogEncoder to be a subclass?