std::string vs. ePub3::string .size() methods

std::string vs. ePub3::string .size() methods must be used carefully when dealing with .c_str() raw char buffers (see ePub3::string .utfsize() or strlen(charbuf)).
This Pull Request addresses *only* the routines that handle percent-escape decoding, as this is where the bug was first revealed.