Improved documentation.
Fixed improperly sized return and parameter types.
Added missing default constructor.
Improved documentation
Fixed cast on return type.