auth: accept unicode in usernames and passwords for basic auth

Limiting usernames and passwords to latin-1 to be spec-compliant
conflicts with services accepting non-latin-1 characters for usernames
and passwords in their basic auth enabled APIs (like Zendesk). To stay
as compatible as possible, accept unicode characters in credentials.
mixpanel: correctly serialize lists in track properties

Blindly forcing tracked property values through port.to_u was a bad
idea. According to Mixpanel docs, properties can be strings, booleans
or lists.

Report and fixed by Hector Garcia, although I used a different patch.

Fixes #45.
mixpanel/tests: fix tests that depended on dict iteration order
gitignore: ignore trial's temporary directory
auth: use unicode for user/password credentials string

A previous commit enabled unicode strings as base64 encoding param
during basic auth header creation to allow any character in users and
passwords, but the 'user:password' string wasn't itself declared as
unicode.
auth: don't use an Unicode literal, they're not supported in Py 3.2

Use port.to_u instead.
mixpanel/tests: make sure to pass unicode to json.loads

In Python 3.x json.loads only accepts unicode objects.
ducksboard: don't use None for the password in Basic Auth

The filter expects a string, so make up one instead of using None.
tests: add some tests for the Basic Auth filter
libsaas: bump version to 0.3