Code cleanup for Model and Database usage

- Removed redundancy on casting.
- Converted Model return types from List<T> to IEnumerable<T>.
- Changed Database type to implement IDisposable for using statement.