Replaced synchronized with ThreadLocal

How about instead
```scala
private val thriftSerializer = new ThreadLocal[TSerializer] {
 override def initialValue = new TSerializer()
}
```
So the initialization is handled outside of the `serializeEvent` code?