For block i try:
ItemStack iS = new ItemStack(bS.getBlock(), 1, bS.getBlock().damageDropped(bS));
For Sign = Air, Bed = Air, Door = Air, Powered redstone lamp = Air, Head = Air
For entity like: Minecart, M...Furnance, M..TNT, Ender_Crystal have no name with .getName().