Fixed(implemented) the funciton to handle private messages and refactoring

## MIX(implemented, fixed, enhanced)

Atmosphere lacks the functions to handle **Private Messages**, so implemented at this pull request.
In particular:

1. FIXED: Private messages timeline contains messages that you can not allowed to see
2. ENHANCED: You can respond/remove response to **Private Messages** like normal messages
3. ENHANCED: Enabled to set multiple addrresses(user ids).  ex. `@bob @john`
4. ENHANCED: You can set **hashtags** in the message
5. ENHANCED: Added API `GET /private/search`

## REFACTORING

**Private Messages** became almost the same as **Normal Messages** from this time(pull request).
As a result, I wrote codes for **Private Messages** that is alomst the same as cods for **Normal Messages**.
So I eliminated **SAME CODES** and I wrote **SPEC**.

## Known Problems(Issues)

I know that there is a room to do refactoring more.
However, there are things to do with high priority more than refactoring.

This is an excuse :smiling_imp: