Fix an infinite loop while merging tables

While writing docs on broadcasts I ran across a broadcast graph
configuration that caused an infinite loop in merge_tables.
I've made things more robust by better standardizing the data type
that gets passed to _next_merge and added a test case for that
graph configuration.
Merge pull request #93 from synthicity/merge-tables-bug

Fix an infinite loop while merging tables

While writing docs on broadcasts I ran across a broadcast graph
configuration that caused an infinite loop in merge_tables.
I've made things more robust by better standardizing the data type
that gets passed to _next_merge and added a test case for that
graph configuration.