Split extract

@mcellis33 to look at

Not ready for merge yet.