For a while I've been bothered by Lua. When I require something, I generally want it to check the directory with my plugin.xml first, and other directories at a later stage. The 'current directory' is rather useless due to the fact that it changes depending on user activity and can't garantuee any relationship to the files you are including. I was finally bothered enough to find out how to solve this little annoyance of mine, and hopefully other people will find it useful too.
-- Adjusted to match WillFa's improvement comment below.
plugin_path = string.match(world.GetPluginInfo(world.GetPluginID(), 6), "(.*\\).*$")
package.path = plugin_path .. "?;" .. plugin_path .. "?.lua;" .. package.path
require "something"