Give anonymous functions a mangled name prefix

The issue that #218 tried to fix still affected anonymous functions, as the
String() method may return a string that begins with 'llvm.'. To avoid this
problem, mangle all such functions with a name prefix of '__anon_'.
`b.WriteString(ctx.mangleFunctionName(f.Parent()))`? I suppose it doesn't matter much given that these are anonymous functions, but it feels a bit neater.