adjusting readme and adding polymorphic code