func (l *Line) JSON() []byte {
	jsonData, err := json.Marshal(l)
	if err != nil {
		glog.Infoln("Error on json Marshal of "+l.Raw, err)
	}
	jsonData = append(jsonData, '\n')
	return jsonData
}
JSON returns a JSON []byte
package line
import (
	"encoding/json"
	"errors"
	"github.com/golang/glog"
)
var (
	ErrLineShort     = errors.New("line too short")
	ErrLineMalformed = errors.New("malformed line")
)
type Line struct {
	ChatBotId int
	Raw       string
	Received  string
	User      string
	Host      string
	Command   string
	Args      []string
	Content   string
	IsCTCP    bool
	Channel   string
	BotNick   string
}
func NewFromJSON(b []byte) (*Line, error) {
	var l Line
	err := json.Unmarshal(b, &l)
	if err != nil {
		glog.Errorln("An error occured while unmarshalling the line")
		return nil, err
	}
	glog.V(2).Infoln("line", l)
	return &l, nil
}
func (l *Line) String() string {
	return string(l.JSON())
}