[added] pluggable history implementations
closes #166