Renamed MultiWriter to SharedWriter.
diff --git a/multi_writer.go b/shared_writer.go
similarity index 82%
rename from multi_writer.go
rename to shared_writer.go
index c78596c..7fc0f46 100644
--- a/multi_writer.go
+++ b/shared_writer.go
@@ -5,7 +5,7 @@
 	"sync/atomic"
 )
 
-type MultiWriter struct {
+type SharedWriter struct {
 	capacity           int64
 	gate               int64
 	shift              uint8
@@ -14,13 +14,13 @@
 	writerCursor       *Cursor
 }
 
-func NewMultiWriter(writerCursor *Cursor, capacity int64, readerBarrier Barrier) *MultiWriter {
+func NewSharedWriter(writerCursor *Cursor, capacity int64, readerBarrier Barrier) *SharedWriter {
 	assertPowerOfTwo(capacity)
 
 	shift := uint8(math.Log2(float64(capacity)))
 	buffer := initializeCommittedSequences(capacity)
 
-	return &MultiWriter{
+	return &SharedWriter{
 		capacity:           capacity,
 		gate:               InitialSequenceValue,
 		shift:              shift,
@@ -37,7 +37,7 @@
 	return buffer
 }
 
-func (this *MultiWriter) Reserve(count int64) (int64, int64) {
+func (this *SharedWriter) Reserve(count int64) (int64, int64) {
 	if count <= 0 {
 		panic("Reservation must be a positive number.")
 	} else if count > this.capacity {
@@ -64,13 +64,13 @@
 	}
 }
 
-func (this *MultiWriter) Commit(lower, upper int64) {
+func (this *SharedWriter) Commit(lower, upper int64) {
 	for mask := this.capacity - 1; lower <= upper; lower++ {
 		this.committedSequences[lower&mask] = int32(lower >> this.shift)
 	}
 }
 
-func (this *MultiWriter) LoadBarrier(lower, upper int64) int64 {
+func (this *SharedWriter) LoadBarrier(lower, upper int64) int64 {
 	for mask := this.capacity - 1; lower <= upper; lower++ {
 		if this.committedSequences[lower&mask] < int32(lower>>this.shift) {
 			return lower - 1