Bugfix/filter parser fails to parse blackets

I forgot I sent a pull-request #72 to the upstream repository. the upstream has been evolving since I sent the pull request. 
So I've merged the head of the branch master and rewrite a test code. 

@jch Thank you for informing me. 
I see, this just allows other valid characters to be constructed into a filter. @satoryu could you write an integration test against OpenLDAP to ensure this is valid? There are [instructions here](https://github.com/ruby-ldap/ruby-net-ldap/tree/master/test/support/vm/openldap#local-openldap-integration-testing). Also, have you tested this to be valid against ActiveDirectory?