Cleaned last.fm code, added cache, added optional target to autojoin settings