Made constructor more flexible to be used in frameworks

- Moved multiple __construct() parameters into a single $params array so
  that it can more easily be incorporated into frameworks
- Changed $this->_params to $this->_request_params to avoid confusion