Raise FT2::Error instead of Exception and release 1.0.0

Since raising `Exception` forces library users to rescue it if they want to catch FT2 errors, this provides a base FT2 specific exception (`FT2::Error`) that is raised in place of `Exception`. Anyone rescuing Exception is strongly encouraged to rescue FT2::Error instead, although rescuing Exception will continue to work.