diff --git a/REAMDE b/REAMDE
new file mode 100644
index 0000000..d318a29
--- /dev/null
+++ b/REAMDE
@@ -0,0 +1,58 @@
+Sage Gear Advice
+by Silversage of Eitrigg
+
+This is BETA software. Comments, bug reports, etc, are welcome. That said, it's
+taken me a year to finally publish this, so fixes might be slow. :( Sorry.
+
+Purpose: SGA is a Pawn-like addon that understands reforging. After installing
+you should see tooltip lines for armor and weapons that show the relative value
+of those items for your character. SGA will compute that value, assuming what
+it calculates to be the best possible reforging. For items which SGA believes
+should be reforged, it also displays the optimal reforging for that item (for
+a particular usage).
+
+Customization: You can customize the stats weights for classes and specs, but
+there's currently no UI. To change them, find the file named "stats.lua" and
+open it for edit (with a text editor, not MS Word!). That file contains
+instructions on how to tweak the weights. After editing and saving, in WoW,
+ /console reloadui
+should reload your world and pick up the new stats.
+
+--------------------------------------------------------------------------------
+ FAQ
+--------------------------------------------------------------------------------
+
+[ How is Sage Gear Advice's reforging calculation different from others? ]
+
+First, the calculation is per-item, and is not trying to optimize an entire
+kit of existing gear. The global optimization is good, but not as useful when
+a piece drops and you're trying to decide whether to spend DKP on it. If you're
+hard-core, you should use SGA for quick evaluation of gear, and use a global
+optimizer to actually do your reforging. (Honestly, they aren't going to be
+that different if they're based on the same stat coefficients.)
+
+Second, Sage Gear Advice does not follow a simple priority order for stats that
+can be reforged. Instead, it will pick the reforging that provides the most
+improvement in the item based on the stats given. For example, if your stats
+have weight Expertise=100, Mastery=20, Haste=1, then for an item that has both
+mastery and haste, it might seem better to reforge haste to expertise. But in
+fact, if the item has a lot more mastery than haste, you can get a bigger
+improvement by reforging mastery to expertise.
+
+[ How does Sage Gear Advice handle gem sockets? ]
+
+Not in the best way, but okay.
+
+If specific stat values aren't provided for various sockets, SGA will guess
+the socket value, approximating it as being equivalent to a Cata blue-level
+gem of that class/spec's best primary stat.
+
+[ How does Sage Gear Advice handle meta-sockets? ]
+
+Horribly. It doesn't weight them at all. Please be very cautious comparing two
+items when only one has a meta-socket.
+
+--------------------------------------------------------------------------------
+
+
+
diff --git a/SageGearAdvice.toc b/SageGearAdvice.toc
index aa9dfea..0b519af 100755
--- a/SageGearAdvice.toc
+++ b/SageGearAdvice.toc
@@ -5,7 +5,6 @@
SageClass.lua
SageReforge.lua
SageItem.lua
-SageGearLevel.lua
GearStatsRegistry.lua
stats.lua
SageGearLevelTooltip.lua
diff --git a/SageGearLevel.lua b/SageGearLevel.lua
deleted file mode 100644
index cf4102d..0000000
--- a/SageGearLevel.lua
+++ /dev/null
@@ -1,72 +0,0 @@
--- SageGearLevel.lua
-
---sage = sage or {}
---sage.class = sage.class or {}
---
-------------------------------------------------------------------------------------------------------
---local rgbHash do
--- local MAX_VALUE = 65536 -- arbitrary
--- local function hash(s)
--- local v = 0
--- for i=1,s:len() do
--- v = 17 * v + s:byte(i)
--- v = (v < MAX_VALUE)
--- and v
--- or math.floor(math.fmod(v, MAX_VALUE))
--- end
--- return v / MAX_VALUE
--- end
---
--- function rgbHash(s)
--- return
--- 0.4 + 0.6 * hash("red" .. s),
--- 0.4 + 0.6 * hash("green" .. s),
--- 0.4 + 0.6 * hash("blue" .. s)
--- end
---end
---
---local Class
---local function newClass(arg)
----- ChatFrame1:AddMessage(arg.name .. " name=" .. tostring(arg.name) .. ", super=" .. tostring(arg.super))
--- local name = (arg and arg.name) or tostring(arg)
--- local super = (arg and arg.super) or Class
--- local class = setmetatable({super=super, name=name}, super)
--- class.__index = class
--- class.class = class
--- class.r, class.g, class.b = rgbHash(name)
--- function class:Debug(...)
--- ChatFrame1:AddMessage(table.concat({name, ": ", ...}, " "), class.r, class.g, class.b)
--- end
--- function class:Print(...)
--- ChatFrame1:AddMessage(string.format(...), class.r, class.g, class.b)
--- end
--- -- make sure there is an _Instantiate at each class so no super gets called twice
--- function class:_Initialize(instance, ...)
--- self.super:_Initialize(instance, ...)
--- end
---
--- return class
---end
---
---do
--- local class = newClass{name="Class"}
---
--- -- default. Many classes will override
--- function class:New(...) -- self is class
--- local class = self
--- local instance = setmetatable({}, self)
--- class:_Initialize(instance, ...) -- calls the subbiest class method first
--- return instance
--- end
---
--- function class:NewClass(arg)
--- return newClass(arg)
--- end
---
--- function class:_Initialize(instance)
--- end
---
--- Class = class
---end
---
---sage.class.Class = Class