added taboo list interface

Added an interface the taboo list should follow so I can make a trivial
implementation but easily swap it out for better ones.