All are welcome, and should, contribute if they feel like it. We have only a few requirements (and, for the most part, we'd probably be willing to forgive you if you didn't follow them, especially on the coding standards part).
We don't have a specific coding style guide, but do try to make any new code look like existing code. This may be difficult because there are some conflicting styles in older and newer code, but just try. We'll note anything that seems amiss.
It's probably best if you make a fork, develop on your fork, and submit a pull request to us. We'll look at it, probably try it out, and either make suggestions or pull it in.
External documentation is something we really need. Also, if you run into anything that even seems mildly bug-like to you, please submit a new issue to our issue tracker. We want to know about these things.