In this paper, a diffusion-based molecular communication channel between two nano-machines is considered. The effect of the amount of memory on performance is characterized, and a simple memory-limited decoder is proposed and its performance is shown to be close to that of the best possible imaginable decoder (without any restriction on the computational complexity or its functional form), using Genie-aided upper bounds. This effect is specialized for the case of Molecular Concentration Shift Keying; it is shown that a four-bits memory achieved nearly the same performance as infinite memory. Then a general class of threshold decoders is considered and shown not to be optimal for Poisson channel with memory, unless SNR is higher than a value specified in the paper. Another contribution is to show that receiver sampling at a rate higher than the transmission rate, i.e., a multi-read system, can significantly improve the performance. The associated decision rule for this system is shown to be a weighted sum of the samples during each symbol interval. The performance of the system is analyzed using the saddle point approximation. The best performance gains are achieved for an oversampling factor of three.