Fix: several bugs in all Thresholds for log pruning after the refactor which has separated
 log pruning strategy and thresholds

Added method init() to Threshold interface to notify when a new pruning check begins

Add tests for FileSizeThreshold, FileCountThreshold, TransactionTimespanThreshold
Makes server ITs use TargetDirectory instead of temp
Merge pull request #2658 from davidegrohmann/fix-log-pruning-bugs

Fix: several bugs in all Thresholds for log pruning
Add tests for TransactionRepresentationStoreApplier

Remove duplicated call to updateIdGenerators since it is called by NeoTransactionStoreApplier
 when in recovery
Add tests for NeoTransactionIndexApplier

Add equals and hashcode methods to simplify testing
Slightly changed the interdace of LazyIndexUpdates to simplify testing
Add tests for NeoTransactionStoreApplier

Code cleanups
Add tests for PhysicalTransactionAppender
Add tests for PhysicalTransactionCursor

Renamed PhysicalLogicalTransactionStore.getCursor to getCommittedTransactions
Add equals/hash code for simplify testing
RecoveryVisitor is created outside the NeoStoreXaDataSource and gets its dependency injected.

LogFileRecoverer calls close on the RecoveryIterator which takes care to set the last committed
 tx instead manually setting in the data source after start.

Add tests for RecoveryVisitor
Add tests for LogVersionLocator
Add tests for TransactionMetadataFiller
Add tests for TransactionPositionLocator
Add tests for VersionAwareLogEntryReader
Repackaging: add org.neo4j.kernel.impl.transaction.xaframework.log.entry
Add tests for ReaderLogVersionBridge

Small cleanups
Small clenaups
Cleanup
Add tests for LogPositionMarker

Removed unused method
Add tests for PhysicalLogFiles

Small cleanups
Remove unused classes and interfaces
Remove redundant synchronized