All my forge modded items have the same name?

I'm trying to update my mod, i'm rewriting the whole thing so that i can get it to 1.6.4 until mcp 1.7.4 comes out. But whatever item i name last is the name of all my tools/items. For example if i put LanguageRegistry.addName(BedrockAxe, "Bedrock Axe"); at the bottom All of my tools are named "Bedrock Axe". Here is my coding:

package Duncans.Mods; //Package directory

/*
* Basic importing
*/

import net.minecraft.block.Block;
import net.minecraft.item.EnumToolMaterial;
import net.minecraft.item.Item;
import net.minecraft.item.ItemFood;
import net.minecraft.item.ItemStack;
import net.minecraftforge.common.EnumHelper;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.Init;
import cpw.mods.fml.common.event.FMLInitializat…
import cpw.mods.fml.common.network.NetworkMod;
import cpw.mods.fml.common.registry.GameRegistr…
import cpw.mods.fml.common.registry.LanguageReg…

/*
* Basic needed forge stuff
*/
@Mod(modid="BedrockMod", name="Bedrock Tools Mod", version="v1")
@NetworkMod(clientSideRequired=true, ser…

public class BedrockMod {

/*
* ToolMaterial
*/

static EnumToolMaterial EnumToolMaterialBedrock = EnumHelper.addToolMaterial("HighPower", 3, 1750, 12.0F, 6, 12);

//Telling forge that we're creating these

//items

public static Item ruby;

//tools

public static Item BedrockAxe;
public static Item BedrockShovel;
public static Item BedrockSword;
public static Item BedrockPickaxe;
public static Item BedrockHoe;

//blocks

public static Block BRock;

//Declaring Init
@Init
public void load(FMLInitializationEvent event){

BRock= new BlockClass(3608, "Bedrock").setTextureName("duncansmod: be…
GameRegistry.registerBlock(BRock, "Bedrock");
LanguageRegistry.addName(BRock, "Bedrock");

ruby = new DuncansItems(2013).setTextureName("dunca…

//define tools

BedrockAxe = new DuncanAxe(9014, EnumToolMaterialBedrock).setTextureName(…
GameRegistry.registerItem(BedrockAxe, "Bedrock Axe");
BedrockShovel = new DuncanShovel(9015, EnumToolMaterialBedrock).setTextureName(…
BedrockPickaxe = new DuncanPickaxe(9016, EnumToolMaterialBedrock).setTextureName(…
BedrockHoe = new DuncanHoe(9017, EnumToolMaterialBedrock).setTextureName(…
BedrockSword = new DuncanSword(9018, EnumToolMaterialBedrock).setTextureName(…

//adding names
LanguageRegistry.addName(ruby, "Ruby");

LanguageRegistry.addName(BedrockAxe, "Bedrock Axe");

LanguageRegistry.addName(BedrockShovel, "Bedrock Shovel");

LanguageRegistry.addName(BedrockPickaxe… "Bedrock Pickaxe");

LanguageRegistry.addName(BedrockSword, "Bedrock Sword");

LanguageRegistry.addName(BedrockHoe, "Bedrock Hoe");

//crafting

GameRegistry.addRecipe(new ItemStack(BRock,1), new Object[]{
"TTT","TST","TTT",'T', Block.obsidian,'S…
});

If anyone can help that would be amazing, thanks!

I haven't done Forge in a while, so I had to do some Googling, but this might help.

To quote the guy from the link I've listed in the source, "Are you setting a name of your block(s) - setUnlocalizedName? The name in registerBlock method is imo just for FML, but the unlocalizedName is used by LanguageRegistry to look-up a title for GUI."