Mitch Moreland re-signs with Red Sox