Added nick parameter to attach.
Merge pull request #302 from melissanoelle/feature/add_nick_attach

Added nick parameter to attach.
Add domain list support.

First pass at adding support for a domain selector on the login form.

Adds a new core parameter 'domains' which should be a list of
acceptable domains.  Only the first whitespace-delineated 'word' will
be used, so additional information can be added to the domains (eg
"chat.foo.com (for general users").

When defined, the login logic will strip off any user-provided domain
and append the selected domain to the JID before attempting to log
into the server.

Problems:
        - Doubles the width of all modal dialogue boxes, not just the
        - Candy.View.Pane.showLoginForm() pulls the domain list
          directly via Candy.Core.getOptions() rather than taking
          them as a parameter.  This is probably not 'best practice'.
add comment describing `domains` option.
Alloow Candy.Util.localizedTime to take a Date obj

There were many cases where the code was creating a date object, rendering it to a string, then parsing the string back into a Date object. This change uses the native Date object as long as possible.
Add timestamp data to messages

This will allow JS code to look at messages already rendered in the DOM and be able to tell the original time the message was received. Among other things, this can be used to determine where to start loading more history, based on which messages are already in the scroll back.
Default to the current date if no delay stamp is available

Also, fix a bug where delay would never be undefined: delay will be an empty jQuery object, but not undefined
Remove tests for undefined timestamps

These should only be tested in one place anyway, to ensure the event is properly populated.  The altered tests still ensure the event is fired and that all fields are present.

We could also play with time, but Sinon.useFakeTimers() is for some reason undefined. For this reason we can't make these tests reliable. See https://groups.google.com/forum/#!topic/sinonjs/_TQugVk441s
Whitespace
Merge pull request #297 from bklang/feature/include_datestamps_on_messages

Feature/include datestamps on messages
jshint fixes
requests and suggestions per Michael in PR #303
Add conference domain to the intial config options in core.
Partial revert of b18b3e2: fix bare username

When domain selector is active, username should be a bare node name,
and using `Strophe.getNodeFromJid()` in such cases returns `null`.
Add support for custom modal classes

`Candy.View.Pane.Modal.show()` now takes optional 4th arg
`modalClass` which will be attached to the newly revealed modal
box.

Additionally, all modals get standard class `modal-common`.

Adjust CSS to apply common attributes to `#chat-modal.modal-common`
so that specificity doesn't prevent custom modal classes overriding
attributes.

Lastly, make login modals wider only when domain selector enabled.
Add a flag on room presence indicating creation

This will allow callbacks to behave differently if the room is being created vs. already existing
spaces in fn calls
Merge pull request #306 from bklang/feature/add_new_room_status_to_event

Add a flag on room presence indicating creation
Add core option `hideDomainList`

Also, re-wrap comment describing core option `domains`.
fix whitespace, again