* Ability to read data from a specific offset. ex: readInt8(5)
* Ability to write over data when an offset is given (see breaking changes) ex: writeInt8(5, 0);
* Ability to set internal read and write offsets.
### Breaking Changes
* Old constructor patterns have been completely removed. It's now required to use the SmartBuffer.fromXXX() factory constructors. Read more on the v4 docs.
* rewind(), skip(), moveTo() have been removed.
* Internal private properties are now prefixed with underscores (_).
* **All** writeXXX() methods that are given an offset will now **overwrite data** instead of insert
* insertXXX() methods have been added for when you want to insert data at a specific offset (this replaces the old behavior of writeXXX() when an offset was provided)
### Other Changes
* Standardizd error messaging
* Standardized offset/length bounds and sanity checking
* General overall cleanup of code.
## 3.0.3
> Released 02/19/2017
* Adds missing type definitions for some internal functions.
## 3.0.2
> Released 02/17/2017
### Bug Fixes
* Fixes a bug where using readString with a length of zero resulted in reading the remaining data instead of returning an empty string. (Fixed by Seldszar)
## 3.0.1
> Released 02/15/2017
### Bug Fixes
* Fixes a bug leftover from the TypeScript refactor where .readIntXXX() resulted in .readUIntXXX() being called by mistake.
## 3.0
> Released 02/12/2017
### Bug Fixes
* readUIntXXXX() methods will now throw an exception if they attempt to read beyond the bounds of the valid buffer data available.
* **Note** This is technically a breaking change, so version is bumped to 3.x.
## 2.0
> Relased 01/30/2017
### New Features:
* Entire package re-written in TypeScript (2.1)
* Backwards compatibility is preserved for now
* New factory methods for creating SmartBuffer instances
* SmartBuffer.fromSize()
* SmartBuffer.fromBuffer()
* SmartBuffer.fromOptions()
* New SmartBufferOptions constructor options
* Added additional tests
### Bug Fixes:
* Fixes a bug where reading null terminated strings may result in an exception.