Dev/jwolski/mma8653 fc

Removed old accel_server and replaced with new python accel module and edited the setup script to install it.
Here's an example of how I would do it, for the enable_tilt function (an arbitrary function I picked that has a lot of redundancy).  Note - there's a couple reasons to make it shorter: to make it easier to read/maintain, to eliminate error multiple strings that are duplicated, and to provide a wall of separation between the low-level C code and high level Python API (which increases readability/maintainability).  These are my preferences having done this before - different people will have different takes on this.  And I'm not trying to be pedantic (if it appears that way).

So, enable_tilt() currently looks like:

```
static PyObject * enable_tilt(PyObject *self, PyObject *args){
    int ret;
    int pin;
    unsigned char debounce;
    if(!PyArg_ParseTuple(args, "iB", &pin, &debounce)){
        PyErr_SetString(PyExc_TypeError, "Not an int and a byte!");
        return NULL;
    }
    int_enable |= (1 << 4);
    if(pin == 1){
        int_pins |= (1 << 4);
    } else {
        int_pins &= ~(1 << 4);
    }
    ret = write_command(CTRL_REG1, 0x00);
    if(ret < 0){
        PyErr_SetString(PyExc_IOError, "Could not enable tilt interrupt!");
        return NULL;
    }
    ret = write_command(CTRL_REG4, int_enable);
    if(ret < 0){
        PyErr_SetString(PyExc_IOError, "Could not enable tilt interrupt!");
        return NULL;
    }
    ret = write_command(CTRL_REG5, int_pins);
        if(ret < 0){
                PyErr_SetString(PyExc_IOError, "Could not enable tilt interrupt!");
                return NULL;
        }
        ret = write_command(PL_CFG, (1 << 7) | (1 << 6));
        if(ret < 0){
                PyErr_SetString(PyExc_IOError, "Could not enable tilt interrupt!");
                return NULL;
        }
        ret = write_command(PL_COUNT, debounce);
        if(ret < 0){
                PyErr_SetString(PyExc_IOError, "Could not enable tilt interrupt!");
                return NULL;
        }
        ret = write_command(CTRL_REG1, prescale);
        if(ret < 0){
                PyErr_SetString(PyExc_IOError, "Could not enable tilt interrupt!");
                return NULL;
        }
    return Py_BuildValue("i", ret);
}
```
Then that function would change to something like:
```
static PyObject * _enable_tilt(int pin, unsigned char debounce){
    int ret;
    int_enable |= (1 << 4);
    if(pin == 1){
        int_pins |= (1 << 4);
    } else {
        int_pins &= ~(1 << 4);
    }
    /* 
     * Bri's note: I strongly like the convention below, even though its not that common (and
     * I generally favor conventions that are common).  The reason I like it is that a sequence
     * of commands to a device is very common in embedded code, and it becomes very
     * hard to read when there's lots of error handling.
     */
    if (write_command(CTRL_REG1, 0x00) < 0) return NULL;
    if (write_command(CTRL_REG4, int_enable) < 0) return NULL;
    if (write_command(CTRL_REG5, int_pins) < 0) return NULL;
    if (write_command(PL_CFG, (1 << 7) | (1 << 6)) < 0) return NULL;
    if (write_command(PL_COUNT, debounce) < 0) return NULL;
    if ((ret = write_command(CTRL_REG1, prescale)) < 0) return NULL;
    return ret;
}
```
And the API wrapper would be something like:
```
static PyObject * enable_tilt(PyObject *self, PyObject *args){
    int ret;
    int pin;
    unsigned char debounce;
    if(!PyArg_ParseTuple(args, "iB", &pin, &debounce)){
        PyErr_SetString(PyExc_TypeError, "Not an int and a byte!");
        return NULL;
    }
    ret = _enable_tilt(CTRL_REG1, 0x00);
    if(ret < 0){
        PyErr_SetString(PyExc_IOError, "Could not enable tilt interrupt!");
        return NULL;
    }

    return Py_BuildValue("i", ret);
}
```
Note: this convention is virtually identical to the functions in led_matrix, like py_fill() for
example.  Also, I just cut and pasted and hacked up the above, likely has errors.