Some fixes using with callbacks

- Catched error if trying to open a non existent modem that causes exception trying to close a non opened port.
- calling callback(error) on errors.
- null pointer exception
@brugnara My email address is emilsedgh@kde.org
You can also find me on IRC, I'm emilsedgh on Freenode and I usually hang out on #Node.js